控制器-ASP.NET MVC-每个应用程序域是否创建多个控制器实例?如果是,在什么条件下
本文关键字:控制器 如果 条件下 在什么 实例 创建 NET -ASP MVC- 是否 应用程序域 | 更新日期: 2023-09-27 18:00:49
每个应用程序域是否创建多个控制器实例?如果是,在什么条件下?
MVC会为每个请求创建一个新的控制器实例,因此您可能会在不同的线程上运行多个实例。
没有什么可以阻止您自己创建多个实例。
控制器应该是无状态的。
正如Jakub所说,使用默认的控制器工厂,每个请求可以获得一个控制器实例。
始终确保控制器是无状态的——如果你的应用程序在web场或Windows Azure上运行,你甚至不能保证后续请求由同一台机器提供服务。
相反,将请求中必须保留的所有数据放入会话状态(或使用后端数据存储(。