首页 > 解决方案 > 如何使用 Sql 数据适配器在 ASP.NET MVC 中进行分页

问题描述

这是进行分页时的错误。将跳过应用于 obj 时出现此错误

严重性代码描述项目文件行抑制状态错误 CS0266 无法将类型“System.Collections.Generic.IEnumerable<Sample.SchedularTask.Models.ScheduleDapper>”隐式转换为“System.Collections.Generic.List<Sample.SchedularTask.Models.ScheduleDapper> '。存在显式转换(您是否缺少演员表?) Sample.SchedularTask E:\Downloads\CINCAI\CINCAI_SampleMT\Sample.SchedularTask\Controllers\HomeController.cs 59 活动

    public async Task<IActionResult>  Index(int PageNumber=1)
    {         
        List<ScheduleDapper> obj=   ScheduleDapper.GetAllSchedule();

        for (int i = 0; i < obj.Count; i++)
        {
            var enumDisplayStatus = (StatusEnum)obj[i].Status;
            string stringValue = enumDisplayStatus.ToString();
            obj[i].Statusvalue = stringValue;
        }
        var users = obj.ToList();
        ViewBag.TotalPages =Math.Ceiling( obj.Count() / 1.0);
        users=users.Skip((PageNumber-1)*10);
        
        return View(obj);

标签: asp.netsql-serverasp.net-mvcasp.net-core

解决方案


users 变量在此处声明为 List -

var users = obj.ToList();

并且在应用跳过 IEnumerable 时再次分配回(跳过将导致 IEnumerable),因此出现转换错误 -

users=users.Skip((PageNumber-1)*10);

如果你想要列表,可能只是评估结果到列表如下 -

users=users.Skip((PageNumber-1)*10).ToList();

推荐阅读