Angular 角度数据表启用服务器分页

Angular 角度数据表启用服务器分页,angular,asp.net-core,angular-datatables,Angular,Asp.net Core,Angular Datatables,我用angular datatables显示了一个非常大的数据集,我正在尝试使用angular组件中的datatables插件启用服务器端分页。API调用是对我正在编写的ASP.NET核心服务的调用 我似乎找不到太多关于如何实现这一点的文档,而且我对datatables插件还比较陌生 我的API获取声明: public async Task<IActionResult> GetOperations( int pageIndex = 0, int pageSize = 50, s

我用angular datatables显示了一个非常大的数据集,我正在尝试使用angular组件中的datatables插件启用服务器端分页。API调用是对我正在编写的ASP.NET核心服务的调用

我似乎找不到太多关于如何实现这一点的文档,而且我对datatables插件还比较陌生

我的API获取声明:

public async Task<IActionResult> GetOperations(
   int pageIndex = 0, int pageSize = 50, string query = null)
这使用pageIndex和pageSize调用我的存储库分页逻辑

我的datatable组件声明与angular datables文档中详述的相同:

我应该使用AJAX方式吗?有没有一种方法可以让它在角度上很好地工作?如果是这样的话,我需要在API控制器中做一些特定的事情来帮助我吗


我也不完全了解angular datatables ui组件,如果您知道一些可能更适合大型数据集显示和编辑的组件,请随意推荐。

这里的主要目标是创建反映datatables post模型的模型,以便稍后可以通过控制器中的模型绑定器解决,是的,你绝对应该用ajax的方式。我最近做了,效果很好

之后,您可以编写一些操作,这些操作将使用您的模型并相应地处理数据

所以你的控制器看起来像这样

    [HttpPost]
    [Route("GetTableData")]
    public IActionResult GetEmployees([FromBody] DataTablesOptions model)
    {
        var propertyMappings = _propertyMappingService.GetMappings<Employee, EmployeeDto>();
        var employees = _employeeRepository.GetEmployees()
            .ApplySearch(model, propertyMappings)
            .ApplySort(model, propertyMappings)
            .ProjectTo<EmployeeDto>(_mapper.ConfigurationProvider)
            .ToPagedList(model);

        return DataTablesResult(employees);
    }
请看一下我最近用angular datatables和asp net core webapi实现的完整服务器端处理代码

我仍在开发它,但employees表的主视图可以工作,它应该为您提供一些指导


这个例子加载所有的数据和页码,然后,你必须使用一些类似的东西,谢谢你的杰出的例子应用程序。