我用默認的ASP.NET MVC4 Web應用程序模板和Visual Studio中的過濾器目錄創建InitializeSimpleMembershipAttribute和創建賬戶控制器是這樣的:爲什麼class屬性在WebAPI中不起作用?
[Authorize]
[InitializeSimpleMembership]
public class AccountController : Controller
{
/* Some Default Actions like Login, LogOff, Register, ...*/
}
,我儘量讓的AccountController的WebAPI,我的代碼是:
[Authorize]
[InitializeSimpleMembership]
public class APIAccountController : ApiController
{
[System.Web.Http.AcceptVerbs("GET", "POST")]
[System.Web.Http.HttpGet]
[System.Web.Http.HttpPost]
[System.Web.Http.AllowAnonymous]
[System.Web.Mvc.ValidateAntiForgeryToken]
public string Login(string UserName, string Password, bool RememberMe)
{
if (WebSecurity.Login(UserName, Password, persistCookie: RememberMe))
{
return "OK";
}
return "Failed";
}
}
現在,當我打電話的API,它在這個換行符:
如果(WebSecurity.Login(用戶名,密碼,每sistCookie:RememberMe))
並且說:在調用「WebSecurity」類的任何其他方法之前,您必須調用「WebSecurity.InitializeDatabaseConnection」方法。
我運行它在InitializeSimpleMembershipAttribute和webapi控制器是相同的控制器。
爲什麼屬性不能在WebAPI中運行?