我们为什么以及在哪里需要托管模块

时间:2013-02-28 03:05:07

标签: c# .net clr .net-assembly

我知道Managed Modules是包含PE32 Header,CLR Header,Metadata和IL代码的逻辑代码容器。并且程序集可以包含使用程序集链接器(AI.exe)链接的多个受管模块。但VS不支持多个托管模块程序集。我想知道何时以及为什么我们确实需要管理模块,如果我们不能在没有组件的情况下使用它们。我们不能只使用组件吗?

我确信有合理的解释,但我不确定它是什么: - )

有关托管模块的更多信息:What is a Managed Module (compared to an Assembly)?

1 个答案:

答案 0 :(得分:4)

posted at the other question似乎很清楚:

enter image description here

基本上,如果要将代码组织为程序集中的容器,则可以使用托管模块。从理论上讲,这应该会给你更好的灵活性。

在实践中,这几乎不会发生,因为大多数人将他们的解决方案组织为一组项目,每个项目都有自己的相关DLL。这种安排允许您在不必更换整个(多模块)程序集的情况下实际交换DLL。