跨控制器的共享模型

时间:2009-11-25 13:15:28

标签: asp.net-mvc

现在在我的每个控制器类中,我实例化一个新的Repository类来访问我的数据库。有没有办法可以简单地创建一次(在所有控制器之间共享一个存储库实例)并传入所有控制器?

3 个答案:

答案 0 :(得分:2)

ControllerBuilder.Current.SetControllerFactory(new MyOwnControllerFactory());

在您的工厂中,您可以设置存储库并传递给所有控制器。

但当然最好使用IoC containers。他们可以选择每个请求/每个应用程序生命周期创建一次存储库。

答案 1 :(得分:0)

你可以把它变成单身。

答案 2 :(得分:0)

依赖注入(或为所有控制器创建基类)