Autofac 应用于IIS托管的WEB程序,注册程序集被回收的问题
程序员文章站
2022-12-09 21:28:47
现项目开始全面接入Autofac,但上线了后发现,iis进程被回收后,在访问网页提示找不到注册在Autofac中的类型,或者实例。现在处理办法记录如下: 1. IIS托管的应用程序,在首次加载时,所有程序集会被加载到AppDomain中[但AppDomain会被iis回收,且程序集只在被需要的时候进 ......
现项目开始全面接入autofac,但上线了后发现,iis进程被回收后,在访问网页提示找不到注册在autofac中的类型,或者实例。现在处理办法记录如下:
1. iis托管的应用程序,在首次加载时,所有程序集会被加载到appdomain中[但appdomain会被iis回收,且程序集只在被需要的时候进行加载]
2. 使用system.web.compilation.buildmanager上的getreferencedassemblies()
var assemblies = buildmanager.getreferencedassemblies().cast<assembly>();
强制将引用的程序集加载到appdomain中。方便autofac进行扫描。
上一篇: 青瓜功效有哪些?哪些人适合多吃青瓜?
下一篇: 大厨教你做正宗的酸辣土豆丝,关键在这一步