我在 ASP.NET Core 7.0 项目中使用 Syncfusion 组件。这是我的
cshtml
标记:
<ejs-grid id="userstbl" allowSorting="true" allowPaging="true"
toolbarClick="toolbarClick" toolbar="@(new List<string>() { "Add", "Edit", "Delete", "Cancel", "Update" })">
<e-grid-pagesettings pageCount="6" pageSize="50"></e-grid-pagesettings>
<e-grid-editSettings allowAdding="true" allowDeleting="true" allowEditing="true" mode="Normal"></e-grid-editSettings>
<e-data-manager url="/Users/FetchData" adaptor="UrlAdaptor"></e-data-manager>
<e-grid-columns>
<e-grid-column headerText="First Name" field="FirstName"></e-grid-column>
<e-grid-column headerText="Family" field="Family"></e-grid-column>
</e-grid-columns>
</ejs-grid>
这是我绑定数据的后端:
public IActionResult FetchData([FromBody] DataManagerRequest dm)
{
IEnumerable DataSource = _userRepository.GetUserList();
DataOperations operation = new DataOperations();
int count = DataSource.Cast<UserListViewModel>().Count();
if (dm.Skip != 0)
{
DataSource = operation.PerformSkip(DataSource, dm.Skip); //Paging
}
if (dm.Take != 0)
{
DataSource = operation.PerformTake(DataSource, dm.Take);
}
return dm.RequiresCounts ? Json(new { result = DataSource, count = count }) : Json(DataSource);
}
如您所见,我有一个名为
count
的参数。但我不知道如何在客户端获取它的值...
根据您的查询,您希望在客户端获取从服务器返回的计数。我们无法获取客户端返回的数据源,因为这将由源处理并在内部直接设置到网格。但是,您可以使用属性“grid.pagerModule.pageSettings.totalRecordsCount”来获取客户端的总记录数。