我正在使用StructureMap for IoC,它对于常规控制器工作正常,但我无法使它适用于区域。我有以下AccountController
在管理区:在ASP.NET MVC区域中使用StructureMap
public class AccountController : Controller
{
private readonly IFormsAuthenticationService formsService;
private readonly IMembershipService membershipService;
public AccountController(IFormsAuthenticationService formsService, IMembershipService membershipService)
{
this.formsService = formsService;
this.membershipService = membershipService;
}
...
}
而这里的错误:
System.InvalidOperationException: An error occurred when trying to create a controller of type 'Foo.Areas.Administration.Controllers.AccountController'. Make sure that the controller has a parameterless public constructor. ---> System.MissingMethodException: No parameterless constructor defined for this object.
任何帮助将不胜感激!
编辑
StructureMap
解决不了MembershipProvider
。
这里的解决方案:
For<MembershipProvider>().Use(Membership.Providers["AspNetSqlMembershipProvider"]);