我正在使用
Aspose
进行一些文档管理,我们的许可证只提供一年的更新,现已过期。因此,当我们以典型的方式更新软件包并获取最新版本的 Aspose
时,它会破坏我们的应用程序。有没有办法锁定这些软件包,使其不显示在 Nuget Package Updates
列表中,或者至少防止通过 Nuget Update
过程更改版本?我查看了各种Nuget
和Microsoft
参考文献,但没有看到任何内容,但我希望这里有人知道一些秘密武器?
我可以想到的两种方法:
我知道这个问题已经很老了,但是您可以在packages.config文件中添加一个属性来锁定版本,正如Matt Ward在这里回答的那样:
对于我们来说,UmbracoCms 软件包在下一版本中进行了重大更改。
<package id="UmbracoCms" version="7.15.5" allowedVersions="[7.15.5]" targetFramework="net472" />
您可以在此处
找到有关版本限制的更多信息一种方法是停止使用 NuGet 并手动引用 DLL。
bin
文件夹(已编译的项目所在的位置)并将所有 Aspose.*
文件复制到项目目录中的新文件夹中。使用最新的
PackageReference
格式,只需在 .csproj
文件中的版本号周围添加方括号即可:
<PackageReference Include="MYPACKAGE" Version="[2.6.0]" />
这将冻结依赖版本,并且不会在更新中显示。
文档:https://learn.microsoft.com/en-us/nuget/concepts/package-versioning?tabs=semver20sort#version-ranges
附注这是一个老问题,但它仍然显示为我的#1 Google 结果,所以我添加了另一个答案。