如果我有一个包含一定数量公共(public)类的类库(对于本例为 5 个)并且我有 3 个项目依赖于该库(对于本例)并且我决定更改其中一个类,但只有 1 个3 个项目中的一个取决于该类。
我是否需要编译/链接/部署所有 3 个项目?
.NET 基本上是依赖于类的名称还是具有某种类型的寻址依赖性? (我有 C++ 背景,所以我知道在 C++ 中我必须重新部署所有 3 个项目)。
最佳答案
如果类继承自接口(interface),并且您不更改接口(interface)(而只更改类实现),那么如果依赖程序集仅依赖接口(interface)与类进行通信,则您不必更改它们。
如果更改依赖程序集所依赖的类的 API(如方法签名或名称),则必须修复依赖程序集才能使用新 API。这包括对类本身名称的更改。
所以这里的关键是提供一个稳定的API。如果更改 API,则必须更改依赖于 API 的代码。如果程序集不依赖(即它不依赖于您正在更改的任何 API 依赖项),则您不必重新部署它。
关于c# - 如果类更改,是否需要重新编译和重新部署项目中的所有程序集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14324001/