1

我有一个 .Net 系统,当第三方引用提供的 API 程序集时可以扩展该系统。我担心的是向后兼容性,即我需要确保无论何时对提供的 API 程序集进行二进制非破坏性更改(例如添加一个方法):

  1. 使用旧版本构建的插件在运行新版本时应该仍然有效。
  2. 但是,使用新版本构建的插件在运行旧版本时不应该工作(否则,如果插件试图调用不存在的方法,这可能会导致运行时失败)

由于第二个要求,我不能简单地保持版本号相同 - 然后我知道满足要求 1 的唯一方法是使用绑定重定向,这需要为所有 API 程序集维护所有先前版本号的长列表。这似乎容易出错且乏味。

在处理 .Net 程序集版本号时,是否有任何替代策略来保持合理的向后兼容性?

4

0 回答 0