Javascript Blazor:在Datatable.Js上使用Entity Framework应用分页
我有一个Blazor项目,它使用实体框架,并使用JavaScript互操作绑定到DataTable.js 该项目运行良好,但如果从我的表中加载的记录太大,我会遇到延迟,我的应用程序会在某个时候崩溃Javascript Blazor:在Datatable.Js上使用Entity Framework应用分页,javascript,c#,asp.net-core,core,blazor-server-side,Javascript,C#,Asp.net Core,Core,Blazor Server Side,我有一个Blazor项目,它使用实体框架,并使用JavaScript互操作绑定到DataTable.js 该项目运行良好,但如果从我的表中加载的记录太大,我会遇到延迟,我的应用程序会在某个时候崩溃 <div class="card-body"> <div class="table-responsive"> <table class="table table-hover tabl
<div class="card-body">
<div class="table-responsive">
<table class="table table-hover table-bordered"
id="example"
width="100%"
cellspacing="0">
<thead>
<tr style="font-size:14px">
<th>FEEDER ID</th>
<th>FEEDER NAME</th>
<th>FEEDER TYPE</th>
<th>DISTRICT ID</th>
<th>TCN 132Kv ID</th>
<th>INJECTION ID </th>
<th>FEEDER NO</th>
<th>FEEDER LENGTH </th>
<th>STATUS</th>
<th>FEEDER CODE</th>
<th>DOWNLOAD MAP</th>
</tr>
</thead>
<tbody>
@foreach (var data in feederview)
{
<tr style="font-size:14px">
<td>@data.FeederId</td>
<td>@data.FeederName</td>
<td>@data.FeederType</td>
<td>@data.DistrictId</td>
<td>@data.Tcn132kv33kvId</td>
<td>@data.InjectionssId</td>
<td>@data.FeederNo</td>
<td>@data.FeederLength</td>
<td>@data.Status</td>
<td>@data.FeederCode</td>
<td align="center">
<button class="btn-info btn-sm" id="btnDelete" value="delete"><i class="fa fa-eye fa-1x " aria-hidden="true"></i></button>
</td>
</tr>
}
</tbody>
</table>
</div>
</div>
</div>
该列表返回多达2000条记录,这使得我的应用程序运行缓慢并崩溃
以上是显示的示例记录(我刚刚加载了一些小记录)
如何将分页添加到Datatable.js中,以允许我在加载时检索特定数量的记录,并在以后检索剩余的加载记录?我认为您需要查看服务器端处理 否则,也许有一种方法可以利用新的虚拟化功能 您可以参考此步骤。
feederview = context.FeederView.Select(c => new FeederView()
{
FeederId = c.FeederId,
FeederName = c.FeederName,
FeederType = c.FeederType,
DistrictId = c.DistrictId,
Tcn132kv33kvId = c.Tcn132kv33kvId,
Tcn132kv33kvTransformerId = c.Tcn132kv33kvTransformerId,
InjectionssId = c.InjectionssId,
InjectionssTransformerId = c.InjectionssTransformerId,
FeederNo = c.FeederNo,
FeederLength = c.FeederLength,
Status = c.Status,
FeederCode = c.FeederCode,
}).ToList();