











| 名称 | 说明 | 简述 |
|---|---|---|
| 二进制兼容 | 在没有重新编译的情况下,如果依赖于先前版本的应用程序适用于新版本,则新版本的库是二进制兼容的。 | 直接替换为新版本的dll而不影响程序启动、运行的。 |
| 源兼容 | 如果重新编译时,依赖于先前版本的代码适用于新版本,则新版本的库与先前版本是源兼容的。 | 需重新编译但无需改源代码的。 |
语义版本控制(简称 SemVer)是应用于库版本的命名约定,用于表示特定里程碑事件。 理想情况下,提供给库的版本信息应帮助开发人员确定版本是否与使用相同库的早期版本的项目兼容。
即开发人员之间的约定:通过版本号,可判断一个库的后向兼容性。
SemVer 的最基本方法是 3 组件格式 MAJOR.MINOR.PATCH,其中:
可使用 app.config 文件更新应用使用的库版本。通过添加所谓的绑定重定向,可在无需重新编译应用的情况下使用新的库版本。
<dependentAssembly>
<assemblyIdentity name="ReferencedLibrary" publicKeyToken="32ab4ba45e0a69a1" culture="en-us" />
<bindingRedirect oldVersion="1.0.0" newVersion="1.0.1" />
</dependentAssembly>
Note:仅当 ReferencedLibrary 的新版本与应用二进制兼容时,此方法有效。
更新后的程序将使用新版本的库。
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。