我已经使用依赖注入技术实现了角色提供者。因此,由于该类没有无参数构造函数(在那里注入一个存储库),所以通常的注册方法web.config
不起作用。如何在ASP.NET MVC 5中以编程方式注册RoleProvider?
我试图在我的Global.asax
应用程序启动事件中手动注册提供程序,但是我得到一个NotSupportedException
,指出Roles.Providers
集合无法修改。
Roles.Providers.Clear();
Roles.Providers.Add(new RepositoryRoleProvider(new MyRepositoryFactory()));
注册角色提供程序时没有参数构造函数的正确方法是什么?
我为我的项目做的是注入到Roles.Provider(而不是providerS)属性中。我不知道是否仍然可用在MVC 5.例如使用ninject我做了像NinjectWebCommon.Kernel.Inject(Roles.Provider); –
@MassimoFranciosa感谢您的评论。如果我理解正确,你使用属性注入。我对吗? –
编辑:对不起,我检查,我实际上仍然使用web.config来指定类。为了实现类似的东西,我将构造函数的依赖关系移到了属性中。 (就像你说的:)) –