Asp.net mvc 4 检查用户是否已登录MVC

Asp.net mvc 4 检查用户是否已登录MVC,asp.net-mvc-4,Asp.net Mvc 4,如果用户输入URL,则我的应用程序检查用户会话是否过期以及用户是否登录,如果会话过期或用户未登录,则我的应用程序重定向到“登录”-控制器的“索引”-方法。(我在每个控制器中有4个控制器和8-9个操作方法,请向我建议一种方便/简单的方法) 我该怎么做 对于需要用户登录的操作,请使用Authorize属性 例如: [Authorize] public ActionResult DoSomething() { //code here... } 未经授权的用户将被重定向到您在Web.config

如果用户输入URL,则我的应用程序检查用户会话是否过期以及用户是否登录,如果会话过期或用户未登录,则我的应用程序重定向到“登录”-控制器的“索引”-方法。(我在每个控制器中有4个控制器和8-9个操作方法,请向我建议一种方便/简单的方法)
我该怎么做

对于需要用户登录的操作,请使用
Authorize
属性

例如:

[Authorize]
public ActionResult DoSomething()
{
   //code here...
}
未经授权的用户将被重定向到您在Web.config中设置的登录页面。

试试这个

//user not logged in
if (Session["User"] == null)
    {
    FormsAuthentication.SignOut();
    //send the user to login page with return URL
    filterContext.Result =
        new RedirectToRouteResult(new System.Web.Routing.RouteValueDictionary {{ "controller", "Login" },
        { "action", "Index" },
        { "returnUrl",    filterContext.HttpContext.Request.RawUrl } });
    return;
}

此代码将在重定向的url中添加您最后的访问url,这样您可以在登录后返回同一页面。

您的问题是?当我使用如下代码:[Authorize]public ActionResult ManageUsers(){//code}在这两种情况下,无论是否登录,都会显示401 unauthorized。我如何设置此[Authorize]属性在我的登录部分??请建议创建自定义属性,并在其中添加此代码。在操作上添加属性。