【问题标题】:Update third party component dlls in a Visual Studio solution在 Visual Studio 解决方案中更新第三方组件 dll
【发布时间】:2011-03-18 14:26:49
【问题描述】:

我有一个很大的解决方案,其中有很多项目使用一些第三方组件(基础设施)。

现在,我安装了该组件的新版本 (6=>7),与旧版本并行。

现在我希望我所有引用的第三方 dll 的“指向”新安装的版本,但不确定我是否应该手动打开每个项目,删除旧的,并重置对新路径的引用......有解决方案中确实有很多项目...有更好的方法吗?

【问题讨论】:

    标签: .net visual-studio visual-studio-2010 reference projects-and-solutions


    【解决方案1】:

    Infragistics 提供了一个名为“Project Upgrade Utility”的工具,可以完全满足您的需求。

    您所要做的就是启动应用程序并选择一个解决方案文件(.sln)或一个项目(.vbproj 或 .csproj)文件,该应用程序让您选择要升级的基础设施版本,它会完成剩下的工作。

    我在很多场合都使用这种方法来升级到新版本的基础设施,它可以正常工作,如果该工具发现任何问题,它会创建一个报告。

    请记住,每个基础设施 dll 在项目的相应 licences.licx 文件中都有一行,其中包含有关版本、文化和公钥的信息,因此如果您进行手动更新,您也必须更新这些行。

    【讨论】:

    • 是的,看看我对奥拉夫的评论......即使我在这次“升级”之后出现了 373 个错误......我看到了隧道尽头的曙光......
    • 对于某些项目,它会抛出“NullReferenceException”......(((
    【解决方案2】:

    我通常使用notepad++在所有.csproj文件中进行搜索和替换。我认为 Visual Studio 中文件中的替换也可以正常工作。

    【讨论】:

    • 这应该可以工作...如果你知道用什么替换...引用有版本,公钥名称...如果是唯一的一个或多或少,但如果你有多个引用,如网格、文本框、共享 dll、win dll...
    • 如果我没记错的话,Infragistics 控件具有相同的公钥等,您只需要替换引用的路径部分。
    【解决方案3】:

    Infragistics 有一个“版本升级实用程序”或“版本实用程序”(info here)。

    其他第 3 方供应商(如 DevExpress)也有类似的工具。您不妨先检查一下。

    【讨论】:

    • 非常好的观点。即使我没有找到“版本实用程序”,我也找到了一个“项目升级实用程序”,拖动解决方案文件夹并... Evrica! - 它加载了我所有的项目......说,这个“东西”引发了一些错误,但我希望我能管理这个......
    • 是的,该工具有不同的名称。我认为“项目升级实用程序”是一个较旧的,所以我没有提到它。这些工具曾经是错误的,但我认为现在不会了。
    【解决方案4】:

    我没有尝试过,但this VS extension 似乎可以完成这项工作

    【讨论】:

    • 我安装并尝试了...没有帮助,或者我不明白它是如何工作的...不过谢谢
    猜你喜欢
    • 1970-01-01
    • 2015-11-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-05
    相关资源
    最近更新 更多