2016-04-29 5 views
3

すでにログインしているユーザーにログインページを到達できないようにしようとしています。ログインしていない限り、ダッシュボードにリダイレクトする必要があります。ログインしたユーザーがasp.netのログインページにアクセスできないようにするmvc 5

私は以下のことを行っており、どちらも動作していません。誰でも解決策をお願いしますか?

// GET: /Account/Login 
    [AllowAnonymous] 
    public ActionResult Login(string returnUrl) 
    { 
     if (Request.IsAuthenticated) 
     { 
      RedirectToAction("Index", "Dashboard"); 
     } 

     ViewBag.ReturnUrl = returnUrl ?? Url.Action("Index","Dashboard"); 
     return View(); 
    } 

そしてこれも

// GET: /Account/Login 
    [AllowAnonymous] 
    public ActionResult Login(string returnUrl) 
    { 
     if (User.Identity.IsAuthenticated) 
     { 
      RedirectToAction("Index", "Dashboard"); 
     }    
     ViewBag.ReturnUrl = returnUrl ?? Url.Action("Index","Dashboard"); 
     return View(); 
    } 

どれガイドが理解されるであろう。ありがとうございました

答えて

4

申し訳ありませんが、私は、ユーザーをリダイレクトする必要がある行の "return"を省略していたことがわかりました。

私は、それが今

に動作します。これは、

// GET: /Account/Login 
[AllowAnonymous] 
public ActionResult Login(string returnUrl) 
{ 
    if (User.Identity.IsAuthenticated) 
    { 
     return RedirectToAction("Index", "Dashboard"); 
    }    
    ViewBag.ReturnUrl = returnUrl ?? Url.Action("Index","Dashboard"); 
    return View(); 
} 
以下の正しいコードであることを追加しました
関連する問題