这是我的第一个问题,所以我会尽量不要羞辱自己。
我现在正在做的是向MVC3 Controller的构造函数注入两个依赖项对象。
但是为了应用程序逻辑,我需要在(运行时)未来的某个时候用新的对象更改这些对象。显然,显而易见的情况是让MVC创建一个注入新对象的新控制器。好吧,但我如何让MVC生产出新的控制器呢?
这是控制器(如果它是相关的,或仅用于视觉识别):
public class RestoreController : Controller {
private readonly StatusProvider statusProvider;
private readonly AppHost appHost;
public RestoreController(StatusProvider statusProvider, AppHost appHost){
this.statusProvider = statusProvider;
this.appHost = appHost;
}
PS 我考虑过其他一些解决方案,但我希望有些人能够确定无法做到这一点。
那可以吗?
我很乐意听到有关我的问题的评论。 Tnx,有一个不错的。
答案 0 :(得分:0)
每次尝试访问控制器时都会创建一个控制器实例(说调用依赖于它的视图)。因此,如果您在运行时注入引用的对象,如果它们已经更改(实例值),您应该在Controller上进行更改