首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在使用packages.config标准项目中的包引用之后,如何恢复到引用.NET中的Nuget包?

在使用packages.config标准项目中的包引用之后,如何恢复到引用.NET中的Nuget包?
EN

Stack Overflow用户
提问于 2017-07-21 18:38:32
回答 4查看 7.7K关注 0票数 17

背景

我有几个C#代码库,我最近将这些代码库转换为.NET标准1.4,用于Xamarin项目以及许多遗留的.NET Framework4.6.1项目。

我最初使用.NET样式将Nuget包添加到项目文件中的包引用标准类库中。

在了解了.NET标准项目中传递包引用未在遗留.NET框架项目中解决的错误之后,我尝试了将<RestoreProjectStyle>PackageReference</RestoreProjectStyle>添加到遗留项目的csproj中。遗留项目仍然没有解决传递的引用-也就是说,解决方法不起作用。

因此,我想回到在我的packages.config标准项目中的一个.NET文件中引用Nuget包的旧风格。

我遵循的步骤是:

  • 卸载.NET标准项目中的所有Nuget包,但不能卸载的NETStandard.Library除外
    • 我对Nuget的VS默认设置是将解决方案中的第一个包添加到packages.config

  • Manage Nuget Packages工具窗口重新安装Nuget包
    • 这个包作为PackageReference放在csproj中,而不是放在packages.config文件中。

有谁知道我如何迫使我的.NET标准1.4项目中的新Nuget包在packages.config中列出而不是作为包引用?

EN

回答 4

Stack Overflow用户

发布于 2018-05-23 14:06:59

除了从项目文件中删除PackageReferences之外,我还必须从$ProjectDir\obj目录中删除以下文件:

  • Myproject.csproj.nuget.cache
  • Myproject.csproj.nuget.g.props
  • Myproject.csproj.nuget.g.targets
  • project.assets.json
票数 18
EN

Stack Overflow用户

发布于 2018-11-17 14:28:20

如何回滚到packages.config

  1. 关闭迁移的项目。
  2. 将项目文件和packages.config从备份(通常\MigrationBackup)复制到项目文件夹。如果obj文件夹存在于项目根目录中,则删除它。
  3. 打开这个项目。
  4. 使用Tools > NuGet >菜单命令打开控制台。
  5. 在控制台中运行以下命令: 更新包-reinstall

来源:https://learn.microsoft.com/en-us/nuget/reference/migrate-packages-config-to-package-reference#how-to-roll-back-to-packagesconfig

票数 7
EN

Stack Overflow用户

发布于 2019-01-29 19:59:05

  1. 删除项目文件中的所有PackageReference。
  2. 删除$ProjectDir\obj中的所有缓存。
  3. 向项目中添加一个空的packages.config文件(带有根标记)。
  4. 重建这个项目。然后,Visual会提示您缺少的内容。
  5. 然后使用nuget manager添加您选择的版本的包。
  6. 重复步骤4和5,VS将一个接一个地将引用添加回packages.config文件。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45244623

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档