Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我用 Funq 工厂自动连接我的 MVC 控制器,我很好奇它们的生命周期管理是什么样的。
MVC 控制器并非设计为线程安全的,因为它们是由 MVC 针对它们正在处理的请求进行初始化的。所以他们可以拥有的最长的生活方式是每个网络请求的生活方式。然而,MVC 只会在IControllerFactory每个 Web 请求中请求控制器一次,这意味着控制器工厂将始终返回一个新的控制器实例。选择每个 Web 请求的生活方式会产生正确的结果,但会降低系统的性能,因为不需要缓存控制器。换句话说:
IControllerFactory
MVC 控制器应该有一个短暂的生活方式。