我安装了 Nuget 包 X.PagedList 和 X.PagedList.Mvc,现在当我调用 Html Helper 'PagedListPager' 时,我收到此错误消息,并且该帮助程序方法下面有一条红色下划线。应用程序构建时没有错误,我可以毫无问题地运行页面,但是这条红线很烦人!
The type 'IEnumerable<>' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. 2_Views_Home_Events.cshtml
问题 - system.runtime 版本 4.0.0 与项目使用的 .net 版本有关系吗?因为我还将 .Net 从 4.5.2 升级到了 4.62,以使 X.PagedList.Mvc 能够正常工作。
我按照错误消息并尝试将命名空间添加到 View 中,如下所示,但它没有执行任何操作。我还转到引用并右键单击添加引用,并查看列表中的 System.Runtime,但我没有看到任何引用。我只看到 System、System.Runtime.* 我没有看到 System.Runtime
我还查看了 nuget 包管理器,发现我可以下载 nuget 包 System.Runtime v4.3.0!为什么一开始就没有将其包含在项目中?如果需要 v4.0.0,v4.3.0 还能工作吗?
使用 Visual Studio 2017 RC 的 Win 10
最佳答案
好吧,这看起来真的很愚蠢。当您运行 VS 并创建 ASP.Net MVC 项目时,System.Runtime 并未安装!所以我安装了nuget包System.Runtime来获取它。解决了!为什么一开始就不存在?查看一些快速详细信息,它看起来包含编程的基础类型,如 char、byte、string 等
关于c# - 该类型是在使用辅助方法时未引用的程序集中定义的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41371364/