C# 如何在MVC中重置Web应用程序或ControllerTypeCache
在我的项目中,需要在运行时添加一些插件,在添加插件调用之后C# 如何在MVC中重置Web应用程序或ControllerTypeCache,c#,asp.net-mvc,caching,web-applications,controller,C#,Asp.net Mvc,Caching,Web Applications,Controller,在我的项目中,需要在运行时添加一些插件,在添加插件调用之后HttpRuntime.UnloadAppDomain()这将清除我项目中的所有缓存和静态变量。在新插件中使用新控制器时,MVC框架无法找到新的控制器类型,也无法实例化请求的控制器 在调试这个问题时,我发现MVC框架使用“ControllerTypeCache”来缓存控制器类型。ControllerTypeCache在应用程序启动时填充。我需要在运行时重置ControllerTypeCache 看起来强制重新启动应用程序将导致使用安装的最
HttpRuntime.UnloadAppDomain()
这将清除我项目中的所有缓存和静态变量。在新插件中使用新控制器时,MVC框架无法找到新的控制器类型,也无法实例化请求的控制器
在调试这个问题时,我发现MVC框架使用“ControllerTypeCache”来缓存控制器类型。ControllerTypeCache在应用程序启动时填充。我需要在运行时重置ControllerTypeCache
看起来强制重新启动应用程序将导致使用安装的最新插件更新ControllerTypeCache
有没有办法在运行时重新启动此缓存或web应用程序?我的情况与WebAPI相同,但您找到了解决方案吗?我的情况与WebAPI相同,但您找到了解决方案吗?