什么决定了程序集何时以及是否加载到 AppDomain 中。
我想我想了解是否:
- 我保证所有项目引用的程序集都将在我的应用程序开始时加载。
- 如果不是,它们究竟什么时候被加载?这将是我第一次使用该程序集中的类/函数吗?
- 有没有办法在编译时判断是否必须先加载程序集,然后再执行我的代码中的第一行?(我知道我可以使用反射,但我想知道我是否可以在编译时配置它)
- 假设我可以控制何时加载程序集,那么依赖程序集呢?我可以告诉执行只加载 1 度/2 度并让其余部分动态加载吗?
什么决定了程序集何时以及是否加载到 AppDomain 中。
我想我想了解是否:
Main
(请注意,通常目标是相反的 - 延迟加载尽可能多的程序集以加快应用程序的加载)。注意:程序集不直接相互“依赖”,只是每个类/方法相互依赖。
我不知道细节,但我知道当无法加载程序集时会触发事件。所以我猜它们是在运行时加载的,你可以向它添加例程。
我认为这将有助于您了解 Assembly Resolve http://msdn.microsoft.com/en-us/library/system.appdomain.assemblyresolve.aspx
这关于程序集加载事件http://msdn.microsoft.com/en-us/library/system.appdomain.assemblyload.aspx