问题
I have added the following nuget package to my MVC 5 application X.PagedList.Mvc
I return the results in my controller/view as follows:
// 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>
But in my view I am getting the following error The type 'IEnumerable<>' is defined in an assembly that is not referenced. System.Runtime...
I have no project.json file in my application so what is this error?
回答1:
Make sure you have the following lines in your Web.config file:
<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>
回答2:
I know its a bit "too" late for answering, but for who just had this error I solved it just as the second half of the error says which is just adding an assembly reference for net standard in the asemblies section in the web config file and as folowing:
< configuration>
...
< system.web>
< compilation debug="true" targetFramework="4.6.1">
< assemblies>
< add assembly="netstandard, Version=2.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51"/>
< /assemblies>
< /compilation>
< /system.web>
...
< /configuration>
^_^
来源:https://stackoverflow.com/questions/38273842/the-type-ienumerable-is-defined-in-an-assembly-that-is-not-referenced