【发布时间】:2015-12-19 02:01:07
【问题描述】:
我们正在开发一个工作中的 WPF 应用程序,它具有各种“常见”依赖项(Unity、Prism 等)。
添加新项目,然后为每个项目设置 NuGet 包依赖关系时一切正常,但在升级时,这真的很痛苦,因为这意味着我们必须遍历每个项目,删除旧引用,然后重新获取NuGet 的最新包。
例如,今天我的任务是将 Prism 从 5.0 升级到 6.0(无论如何都有重大更改),这意味着,除了修复所有命名空间冲突等,我必须通过每个项目,删除旧的引用,添加新的依赖并冲洗并重复。
我的问题是,有没有更聪明的方法来处理这个问题,或者这是标准方法?
非常感谢,
更新:
我最关心的是包管理器上没有显示的“主要”升级。版本 5.0 -> 6.0 升级将被视为主要升级,因此不会在 NuGet 包管理器中对其应用自动更新。
我不希望 NuGet 能够自动为我执行此操作,因为此类升级可能(并且经常这样做)包括重大更改,但我想知道是否有一种方法可以比删除来自每个项目的项目和 packages.config 的引用,然后使用 NuGet 重新添加它们。对于一个相对较大的项目,这非常耗时,我想知道是否有人有更好的方法来管理此类依赖项。
【问题讨论】:
-
我认为你还没有使用过 VS2015...你使用的是哪个版本的 Visual Studio?
-
@DeblatonJean-Philippe 2013。我很想升级到 2015 但不幸的是目前不可行(企业许可等)
-
@kha(更新后)我不确定我是否理解。我通过 NuGet 包管理器对 Entity Framework 从 v5.0.0 到 v6.1.3 进行了重大更新,是的,存在重大更改,因此我也必须修复这些更改。 app.config/web.config 文件中的引用会自动更新,我所要做的就是在 using 语句中更改一些命名空间问题。
-
@djm61 不幸的是,至少对于 PRISM,它没有显示为更新,我不得不自己手动完成。也许有些软件包可以做到这一点,而其他软件包则不能?
标签: c# visual-studio nuget