我已将以下nuget包添加到我的MVC 5应用程序X.PagedList.Mvc
我在控制器/视图中返回结果如下:
// Repo
public IPagedList<Post> GetPagedPosts(int pageNumber, int pageSize)
{
var posts = _context.Post
.Include(x => x.Category)
.Include(x => x.Type);
// Return a paged list
return posts.ToPagedList(pageNumber, pageSize);
}
// View model
public class PostViewModel
{
public IPagedList<Post> Posts { get; set; }
...
}
// Controller method
public ActionResult Index(int? page)
{
int pageNumber = page ?? 1;
int pagesize = 5;
var posts = _PostRepository.GetPagedPosts(pageNumber, pagesize);
var viewModel = new PostViewModel
{
Posts = posts,
...
};
return View(viewModel);
}
// View
@model MyApp.ViewModels.PostViewModel
@using X.PagedList.Mvc;
@using X.PagedList;
<p>Page @(Model.Posts.PageCount < Model.Posts.PageNumber ? 0 : Model.Posts.PageNumber) of @Model.Posts.PageCount </p>
但在我看来,我收到以下错误The type 'IEnumerable<>' is defined in an assembly that is not referenced. System.Runtime...
我的应用程序中没有project.json文件,这是什么错误?
答案 0 :(得分:19)
确保Web.config文件中包含以下行:
<compilation debug="true" targetFramework="4.6.1"> //don't need to change THIS line, just the content of this section
<assemblies>
<add assembly="System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<add assembly="System.Collections, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</assemblies>
</compilation>
答案 1 :(得分:1)
我知道回答得太晚了,但是对于谁刚遇到这个错误 正如错误的后半部分所述,我已解决了该问题,即只是在Web配置文件的“程序集”部分中为net标准添加了程序集引用,如下所示:
<配置>
...
<编译debug =“ true” targetFramework =“ 4.6.1”>
<程序集>
装配>
...
/ configuration>
^ _ ^