【发布时间】:2012-09-28 13:58:19
【问题描述】:
与AppDomain.GetAssemblies() 相比,BuildManager.GetReferencedAssemblies() (System.Web.Compilation.BuildManager) 似乎是一种更可靠的方式来获取 ASP.NET 应用程序在运行时引用的程序集,因为 AppDomain.GetAssemblies() 只获取“具有 已经加载到此应用程序域的执行上下文中”。
遍历所有程序集是在应用程序启动时在 DI 容器中动态注册类型的重要工具,尤其是在应用程序启动期间,可能还没有加载其他程序集(在不需要的地方),并且组合root 是第一个需要它们的人。因此,有一个可靠的方法来获取应用程序引用的程序集是非常重要的。
虽然BuildManager.GetReferencedAssemblies() 是 ASP.NET 应用程序的可靠方法,但我想知道:其他类型的应用程序有哪些替代方法,例如桌面应用程序、Windows 服务和自托管WCF 服务?
【问题讨论】:
标签: asp.net asp.net-mvc winforms wcf asp.net-web-api