【问题标题】:Publisher policy restriction to Major.Minor?出版商政策对 Major.Minor 的限制?
【发布时间】:2014-12-07 08:12:16
【问题描述】:

为什么 .NET 中发布者策略的版本号限制为 Major.Minor?

  • 如果我的 Assembly 2.4.0.0 包含错误
  • 和 2.4.1.0 修复了该错误
  • 我为 2.4(而不是 2.4.0.0)安装了发布者策略文件
  • 为什么 .NET 在加载 2.4.26.0 时仍要检查发布者策略文件?

对 Major.Minor 的限制有什么原因吗?

【问题讨论】:

  • 这是一种折衷方案,避免在 GAC 中充斥 大量 策略文件以进行频繁的微小更改。您只需在部署小错误修复时替换策略文件。您仍然可以通过 bindingRedirects 进行细粒度控制。
  • 当框架开发人员做出未记录的妥协时,我总是遇到问题......但感谢您的信息。如果你喜欢,你可以把它变成一个答案,我会接受的。

标签: .net clr versioning .net-assembly


【解决方案1】:

2.4 版本的发布者策略适用于程序集的任何版本 2.4.X.Y。版本2.4.26.0 也属于2.4.X.Y 模式,因此在加载程序集时会检查发布者策略。

如果您这样定义重定向:

<bindingRedirect oldVersion="2.4.0.0" newVersion="2.4.1.0"/>

那么在加载版本2.4.26.0时将不会应用此策略。

【讨论】:

    猜你喜欢
    • 2020-01-27
    • 1970-01-01
    • 1970-01-01
    • 2011-06-14
    • 1970-01-01
    • 2019-07-27
    • 2023-03-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多