Tom*_*ght 0 asp.net-mvc pagedlist nuget nuget-package
我正在尝试从PagedList切换到X.PagedList。我使用 NuGet 卸载 PagedList 和 PagedList.Mvc 包,然后安装 X.PagedList 和 X.PagedList.Mvc。
当我去更新我的视图时,我发现自己处于一个奇怪的情况:我似乎无法像这样引用示例中PagedList.Mvc详述的命名空间:
@using X.PagedList.Mvc;
@using X.PagedList;
Run Code Online (Sandbox Code Playgroud)
在 Visual Studio 中和调试时,会出现以下异常:
命名空间“X.PagedList”中不存在类型或命名空间名称“Mvc”(您是否缺少程序集引用?)
(顺便说一句,如果我不这样做using,我会得到关于缺少定义的例外,正如预期的那样。)
NuGet 包有问题吗?有没有办法手动向通过 NuGet 安装的包添加程序集引用?
所以,最后我确实找到了一个让这个工作的hacky方法......
我需要做的就是手动添加对X.PagedList.Mvc.dll. 奇怪的是,它出现在包目录 ( .\packages\X.PagedList.Mvc.5.3.0.5300\lib\net46) 中,并且看起来像是一个有效的包文件。
不知道为什么这不会自动发生,但我怀疑这是由于与旧PagedList.Mvc包发生冲突。
将这个问题保留一两个星期,以防万一有人可以提出一些更有见地的问题。
更新:上述方法在本地运行良好,但在我部署进行测试时失败。这促使了更多的挖掘和解决方案,以使 NuGet 正常工作。
我使用NuGet 包资源管理器发现X.PagedList.Mvc目标是比我添加到的项目更新的 .NET 框架版本(4.6 与 4.5)。有点失望的是,安装并没有更有帮助地失败,但至少现在已经排序了。