找不到软件包"Glass.Mapper"的"4.2.1.188"版本



我是 Sitecore 和 Glass.Mapper 工具的新手。我正在使用Visual Studio 2013和Sitecore 8.1来开发我已经开始研究的解决方案(不是作者)。

由于我观察到的其他问题,我将尝试演示我的解决方案现在包含哪些内容以消除构建错误。

My packages.config 包括以下内容:

<package id="Glass.Mapper" version="4.2.1.188" targetFramework="net45" />
<package id="Glass.Mapper.Sc" version="4.2.1.188" targetFramework="net45" />

我的 nuget.config 包括以下内容:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<solution>
<add key="disableSourceControlIntegration" value="true" />
</solution>
<activePackageSource>
<add key="All" value="(Aggregate source)" />
</activePackageSource>
<packageSources>
<add key="nuget v2" value="https://www.nuget.org/api/v2" />
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
</packageSources>
</configuration>

我已将这些作为项目引用添加到我们的包目录中的每个Dlls,其中还包括一些项目中的以下内容:

<package id="Glass.Mapper.Sc.CastleWindsor" version="3.3.0.25" targetFramework="net45" />
<package id="Glass.Mapper.Sc.Core" version="4.2.1.188" targetFramework="net45" />
<package id="Glass.Mapper.Sc.Mvc-5" version="3.3.0.45" targetFramework="net45" />

解决方案错误已从几百个减少到 ~20 个,主要是由于此问题,并且由于依赖项目无法生成其项目而出现的Metadata file "..." could not be found错误Dlls

我们无法就地升级 Nuget,并且由于代码引用了密钥包中已弃用的方法,因此无法使用Manage Nuget Packages for Solution执行升级。

如果使用 Web 浏览器浏览 nuget.org 上的包,则可以猜测查看特定版本的包的模式。因此,GlassMapper 的 4.2.1.188 版将使用 URL https://www.nuget.org/packages/Glass.Mapper/4.2.1.188

在那里,我看到一条消息说

所有者已取消列出此包。这可能意味着该包已弃用或不应再使用。

所以包存在,所以现有包应该能够恢复它,但所有者已将其除名,以减少新项目开始使用它的可能性。有趣的是,包所有者已删除该包的所有版本,这表明该包已弃用。

无论如何,正如我提到的,通常包仍然可以恢复(这就是取消列出与删除的重点)。所以我最好的猜测是,与Visual Studio 2013一起使用的NuGet版本不支持未列出的包,因为它非常非常旧。

你可以从 nuget.org/downloads 下载nuget.exe,从命令行还原,然后使用Visual Studio。否则,您可能需要升级到较新版本的 Visual Studio。

最新更新