我有一個帶有控制器的ASP.NET MVC應用程序。匿名用戶可以訪問此控制器中的所有操作。但是,如果用戶通過身份驗證,我想在操作中做一些特殊的事情。目前,我注意到無論如何,User.Identity.IsAuthenticated在此操作的上下文中始終是false。這裏是我的代碼:在ASP.NET MVC控制器中與授權和未授權用戶共享動作
public class MyController : Controller
{
public ActionResult GetProfile(string id)
{
if (User.Identity.IsAuthenticated) {
ViewBag.ShowAuthStuff = true;
} else {
ViewBag.ShowAuthStuff = false;
}
}
}
如何使它使得這兩個身份驗證和未經驗證的用戶可以訪問相同的動作,但做不同的事情?我無法弄清楚爲什麼User.Identify.IsAuthenticated始終是false。我檢查了我的cookies。當我登錄時,有一個名爲cookie的:
.ASPXAUTH
然而,當我訪問的動作,該cookie不再可用。
您使用的成員資格提供或做你自己的身份驗證? –