このエラー通知を引き起こしたIEnumerable<model>
〜IEnumerable<ViewModel>
のビューを変更しました。いくつかの同様の問題を発見したhere。これについてさらに理解するのにhttp://datatables.net/tn/4もチェックされましたが、この問題を解決できませんでした。 ViewModelではなくModelを使用して元の状態に戻すと、正しく動作しています。 ModelとViewModelの同じプロパティがあるためです。行0の要求されていないパラメータ '9' - DataTableエラー
閲覧:
@model IEnumerable<ERPLite.Models.DeliveryScheduleVM>
@section Scripts{
<script>
$(function() {
$('#TableId').DataTable({
'paging': true,
'lengthChange': false,
'searching': true,
'ordering': true,
'info': true,
'autoWidth': false,
"scrollX": true,
'order': [[0, 'desc']]//orderby desc
})
})
</script>
}
<div class="box">
<!-- /.box-header -->
<div class="box-body">
<table id="TableId" class="table table-bordered table-striped">
<thead>
<tr>
<th hidden="hidden">@Html.DisplayNameFor(model => model.ID)</th>
<th>@Html.DisplayNameFor(model => model.ProductName)</th>
<th>@Html.DisplayNameFor(model => model.Quantity)</th>
<th>Actions</th>
</tr>
</thead>
<tbody>
@foreach (var item in Model)
{
<tr>
<td hidden="hidden">
@Html.DisplayFor(modelItem => item.ID)
</td>
<td>
@Html.DisplayFor(modelItem => item.ProductName)
</td>
<td>
@Html.DisplayFor(modelItem => item.Quantity)
</td>
</tr>
}
</tbody>
</table>
</div>
<!-- /.box-body -->
</div>
処置方法:
のDataTable警告:
public ActionResult Index() { var deliverySchedules = db.DeliverySchedules.ToList(); var deliverySchedulesVMList = new List<DeliveryScheduleVM>(); foreach(var item in deliverySchedules) { var deliveryScheduleVM = new DeliveryScheduleVM(); deliveryScheduleVM.ID = item.ID; deliveryScheduleVM.ProductID = item.ProductID; var product = db.Products.Find(item.ProductID); deliveryScheduleVM.ProductName = product.ProductName; deliveryScheduleVM.Quantity = item.Quantity; deliverySchedulesVMList.Add(deliveryScheduleVM); } return View(deliverySchedulesVMList); }
詳細な説明警告= TABLEIDテーブルID - 要求された未知パラメータを '9' 行についてこのエラーの詳細については、 http://datatables.net/tn/4を参照してください。
助けをお待ちしています。前もって感謝します。
パラメータは、HTMLマークアップで指定されたもの以上の表の列や表のセルの量が「DataTable」要件を満たしていない可能性がある整数のようです。 –