NuGet 安装后 X.PagedList.MVC 命名空间不可用

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 安装的包添加程序集引用?

Tom*_*ght 5

所以,最后我确实找到了一个让这个工作的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)。有点失望的是,安装并没有更有帮助地失败,但至少现在已经排序了。