【问题标题】:Nuget not generating binding redirect for weak named assembliesNuget 不为弱命名程序集生成绑定重定向
【发布时间】:2014-04-28 17:11:56
【问题描述】:

我一直无法找到有关此的任何文档,但是 nuget 绑定重定向生成仅适用于强命名程序集吗?我在我们自己的 nuget 服务器上有一些内部库,它们都是弱命名的,但是在每次发布到 nuget 时,都会为 dll 生成不同的版本号。

由于版本号不同,引用该程序集的依赖项将无法加载与运行时编译时所针对的版本号不同的程序集。所以现在我们处于这样一种情况,如果我们将一个新的 nuget 发布到一个公共库,我们必须手动发布所有引用该公共库的 nuget 包(即使更改是向后兼容的)。我们正在将所有内容都改用强命名,但目前由于遗留的决定,没有任何东西是强命名的,所以目前的解决方法会很好。

【问题讨论】:

    标签: c# dll deployment nuget strongname


    【解决方案1】:

    我认为 NuGet 不支持向弱命名程序集添加绑定重定向。描述它的文档是http://blog.davidebbo.com/2011/01/nuget-versioning-part-3-unification-via.html

    解决方法可能是将 install.ps1 添加到包中。因此,在包更新/安装期间, install.ps1 将在配置上添加/修改绑定重定向。

    【讨论】:

    • 实际上.Net中没有“绑定重定向非强签名程序集”这样的概念,因此即使使用脚本也无法制作。另一方面,如果最新版本已经加载,则应该没有问题,因为如果未签名,.Net 会忽略版本比较。否则有用的帖子。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-27
    • 2017-02-16
    • 1970-01-01
    • 2011-03-30
    • 2016-05-30
    相关资源
    最近更新 更多