我目前正在使用一个旧的解决方案,该解决方案过去没有使用nuget来获取其软件包,但是我试图将其添加到软件交付管道(git源代码控制)中,并且无法恢复软件包。它的工作方式是,它在构建过程中还原软件包,而就我而言,它找不到还原软件包的方法。 Git忽略bin文件夹,因此未在源代码管理中检查所有软件包。我可以删除bin文件夹上的gitignore,但是在此之前,我想确保是否有一种简单的方法可以将软件包添加到package.config文件中并在构建过程中还原。最重要的是,我希望这个旧的.Net 3.5项目使用Nuget而不是现在如何通过在bin文件夹中的csproj文件中进行引用来工作。
答案 0 :(得分:1)
我要做的是:
使用所有dll删除文件夹
对于因缺少名称空间/类而导致的每个编译错误,请使用Visual Studio的程序包管理器来安装必要的程序包。请注意,使用Package Manager控制台而不是UI会更快,特别是在您有大量项目和/或软件包的情况下。只要记得在项目选择下拉菜单中选择正确的项目即可。
在文本编辑器中一个接一个地打开每个项目文件(或者您可以在VS的解决方案资源管理器中卸载该项目,然后进行编辑,但是我发现只使用VSCode会更快),并删除以{{ 1}},并且include路径是您之前删除的bin目录(保留.NET Framework参考)。您可以将MSB3106设置为警告,将其视为错误,以便更轻松地找到
如果您使用的是Visual Studio 2017,建议您考虑使用PackageReference而不是packages.config。有several benefits,更不用说SDK样式的项目(.NET Core要求)不再支持packages.config。我还建议,如果可能的话,请切换到SDK样式的项目(不是全部都可以,但是任何类库和控制台应用程序通常都可以没有问题)。