装配负载引用了几个dll

时间:2017-03-08 14:21:44

标签: c# .net-assembly

在我的 ASP.NET MVC 项目中,我想将我的服务类作为类库。
我想在我的主项目中添加几个dll 将添加的dll具有自己的程序集引用。其中一些可能是相同的,例如System等 这种架构是否会影响主要项目的性能?

只加载了一个System - dll,还是为每个类库单独加载?

1 个答案:

答案 0 :(得分:2)

对于给定的.NET进程,默认情况下是单个 AppDomain ,这是加载和解析DLL的环境。这意味着如果您引用DLL X(Say,System.dll),并且还引用也引用System.dll的DLL Y,它只会被加载到appdomain中一次,并且进一步的引用将在内存中重用相同的实例。 / p>

对于自定义程序集也是如此。如果X和Y都引用Z.dll,它仍然只加载一次。

你可以轻易地知道你不会在这里造成任何臃肿。