【发布时间】:2019-11-23 12:43:37
【问题描述】:
我正在尝试将 jQuery DataTables 服务器端与 .net 核心一起使用。
我正在使用 Ajax 调用我的控制器,并且我使用没有正文的表格强类型化了 View。
我在控制器中获取数据,但似乎无法显示。
我以为是 JSON (https://dotnetcoretutorials.com/2018/05/05/setting-json-serialization-configuration-at-runtime-on-a-net-core-api/),但我查了一下,似乎不是。
我尝试了this tutorial,但仍然找不到我做错了什么。
我只是可以显示在 Ajax 中定义的“sDefaultContent”。
控制器:
[HttpPost]
public async Task<IActionResult> LoadTransaction()
{
var requestFormData = Request.Form;
List<Transactions> data = await ApiClientFactory.Instance.GetInvoice();
dataList = data;
try
{
var listData = ProcessModuleCollection(data, requestFormData);
dynamic response = new
{
Data = listData,
Draw = requestFormData["draw"],
RecordsFiltered = data.Count,
RecordsTotal = data.Count
};
return Ok(response);
//return Json(response);
}
}
查看:
<div class="row">
<div>
<div >
</div>
<div class="panel-body">
<table id="example" class="table table-striped table-hover responsive">
<thead>
<tr>
<th>
@Html.DisplayNameFor(model => model.ValueDate)
</th>
<th>
@Html.DisplayNameFor(model => model.StructuredMessage)
</th>
</tr>
</thead>
</table>
</div>
</div>
(function($) {
var generateCustomerTable = $("#example")
.dataTable({
"processing": true,
"serverSide": true,
"ajax": {
"url": "/Home/LoadTransaction",
"method": "POST"
},
"columns": [
{ "data": "ValueDate", "name": "ValueDate", "sDefaultContent": '0-0-0000', "autoWidth": true },
{ "data": "StructuredMessage", "name": "StructuredMessage", "sDefaultContent": '0-0-0000', "autoWidth": true },
],
"ordering": true,
"paging": true,
"pagingType": "full_numbers",
"pageLength": 10
});
})(jQuery);
这是我的控制台的 printScreen console PrintScreen
【问题讨论】:
-
您是否遇到了一些错误?
-
请编辑您的问题并从您的控制器发布 JSON 响应。在您的网站上按 F12 并转到网络选项卡,找到对
/Home/LoadTransaction的请求并复制/粘贴响应。 -
Gyrocode.com 我对 200 的请求没有问题
标签: c# jquery datatables core