【问题标题】:IPagedList // IEnumerable troubleIPagedList // IEnumerable 麻烦
【发布时间】:2016-11-24 23:28:46
【问题描述】:

我在我的 asp.net 项目中遇到了问题。我想为我的表格分页,但我无法启动我的网站。

这就是问题所在:

  • 我使用 getter 和 setter 在“Context”文件夹中创建了实体模型 我的桌子
  • 然后我用 vs 生成了控制器
  • 我用这段代码修改控制器

        public ActionResult Index(int? page)
        {
    
        var firmas = from f in db.Firmas select f;
        if (Request.HttpMethod != "GET")
        {
            page = 1;
        }
        int pageSize = 2;
        int pageNumber = (page ?? 1);
    
        return View(firmas.ToPagedList(pageSize, pageNumber));
        }
    

我把这个放到 cshtml 索引中

@*@model IEnumerable<actiTest2.Context.Firmas>*@

@model PagedList.IPagedList<actiTest2.Controllers.FirmasController>

@using PagedList;
@using PagedList.Mvc;

这就是重点,如果我调用模型 IEnumerable,程序崩溃原因需要 IPagedList,但如果我调用 IPagedList 程序说“FirmasController”不包含我的模型显示的定义。

我能做什么?使用 get/set errs 合并控制器和自动生成的代码?

提前致谢

编辑:应用“smoksnes”解决方案后,我遇到了一个新问题:

http://i.imgur.com/DbtIvMf.png

【问题讨论】:

  • 它的@model PagedList.IPagedList&lt;actiTest2.Context.Firmas&gt;(假设db.Firmas返回的对象类型为Firmas

标签: c# asp.net asp.net-mvc-5


【解决方案1】:

将视图中的模型更改为(第一行):

@model PagedList.IPagedList<actiTest2.Context.Firmas>

当您使用@model PagedList.IPagedList&lt;actiTest2.Controllers.FirmasController&gt; 时,您是在尝试将您的控制器用作模型。

所以你的视图应该是这样的:

@using PagedList
@using PagedList.Mvc
@model PagedList.IPagedList<actiTest2.Context.Firmas>

<p> Content here </p>

在你的控制器中:

public ActionResult Index(int? page)
{
    // Order the collection before skipping.
    var firmas = db.Firmas.OrderBy(x => x.Name); // Or some property.
    if (Request.HttpMethod != "GET")
    {
        page = 1;
    }
    int pageSize = 2;
    int pageNumber = (page ?? 1);

    return View(firmas.ToPagedList(pageSize, pageNumber));
}

这里有更多关于错误的信息:

The method 'OrderBy' must be called before the method 'Skip' Exception

例外意味着如果你申请,你总是需要一个排序的输入 跳过,同样在用户没有点击列进行排序的情况下 由。

专门针对ToPagedList()

【讨论】:

  • 现在,当我在索引方法中返回视图时,控制器出现了问题。 NotSupportedException,我编辑第 1 个帖子以显示图像。
  • 你在控制器中遇到了什么问题?
  • 在初始帖子上发布图片
猜你喜欢
  • 2012-02-04
  • 2010-11-11
  • 2011-06-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多