ASP.Net,引用的程序集未被IIS加载到AppDomain中

时间:2010-05-25 15:57:53

标签: c# iis-7

我们正在Application_Start(Global.ascx.cs)中为IIS 7.0(集成管道)托管的WCF服务执行以下操作。

        var mapperConfigurations = AppDomain.CurrentDomain.GetAssemblies()
            .SelectMany(a => a.GetExportedTypes().Where(t => typeof (IMapperConfiguration).IsAssignableFrom(t) && t.IsClass))
            .ToList();

Web服务在其bin文件夹中有8-10个程序集,每个程序集都有多个IMapperConfiguration实现。 IIS重置后,找不到映射器配置(使用debug.write发现)。但是,此行为不一致,有时会找到IMapperConfiguration的所有实现。

IIS何时加载程序集以及此代码有什么问题?

由于

1 个答案:

答案 0 :(得分:1)

它很简单。 .net仅在真正需要时加载程序集。这意味着您希望在程序集中拥有类型的实例。

在您的情况下,您必须明确加载它们。