试图在asp.net服务器端分页得到404

本文关键字:分页 服务器端 net asp | 更新日期: 2023-09-27 18:03:03

我正在尝试分页服务器端,但当我运行时,它从未命中我的api。

    [Route("{pageNumber:int}/{pageSize:int}")]
    public IHttpActionResult Get(int pageSize, int pageNumber)
    {
        string userId = User.Identity.GetUserId();
        List<AdminVM> admin = _adapter.GetAdminControl(pageSize, pageNumber);
        var totalcount = admin.Count();
        var totalPages = Math.Ceiling((double)totalcount / pageSize);
        var result = new
        {
            TotalCount = totalcount,
            totalPages = totalPages,
            Admin = admin
        };
        return Ok(result);
    }

这个工厂正在打电话:

    (function () {
    angular
        .module('EnvisionApp')
        .factory('PaginationFactoryRouting', function ($resource) {
            return $resource("api/apiAdmin/:id",
                { id: "@ProjectID" },
                {
                    'query': {
                        method: 'GET',
                        url: '/api/clubs/:pageNumber/:pageSize',
                        params: { pageNumber: '@pageNumber', pageSize: '@pageSize'}
                    }
                });
        });
})();

任何想法?

试图在asp.net服务器端分页得到404

看起来控制器的URL不正确。检查控制器上的RoutePrefix,看看是什么组成了完整的URL。从您发布的jQuery代码中,将此添加到控制器:

[RoutePrefix("/api/clubs")]
public class ClubsController
{
    //snip
}