2017-11-17 2 views
1

私は私のプロジェクトを実行すると、それは私がユーザ名とパスワードを入力すると エラーmvcを使用してログインせずにホームページが開かれましたか?私はセッションをログアウトし、クリアしたら

public class RouteConfig 
    { 
     public static void RegisterRoutes(RouteCollection routes) 
     { 
      routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 

      routes.MapRoute(
       name: "Default", 
       url: "{controller}/{action}/{id}", 
       defaults: new { controller = "Account", action = "Login", id = UrlParameter.Optional } 
      ); 
     } 
    } 

細かい作業ログインページに行くには、適切

//[Authorize] 
    //[InitializeSimpleMembership] 
    public class AccountController : Controller 
    { 
     // 
     // GET: /Account/ 
     public ActionResult Index() 
     { 
      return View(); 
     } 

#region Login 
     [HttpGet] 
     [AllowAnonymous] 
     public ActionResult Login() 
     { 
      return View(); 
     } 

     [HttpPost] 
     [AllowAnonymous] 
     [ValidateAntiForgeryToken] 
     public ActionResult Login(Login login) 
     { 
      if (ModelState.IsValid) 
      { 
       bool success = WebSecurity.Login(login.UserName, login.Password, false); 
       var UserID = GetUserID_By_UserName(login.UserName); 

       if (success == true) 
       { 
        Session["Name"] = login.UserName; 
        Session["UserID"] = UserID; 
        return RedirectToAction("Index", "Home"); 
       } 
       else 
       { 
        ModelState.AddModelError("Error", "Please enter valid Username and Password"); 
        return View(login); 
       } 

      } 
      return View(login); 
     } 
     #endregion 

} 

Login

ログインし、 URLバーlocalhost:51426/Home/indexをホームページに入力すると、ホームページがloginなしで直接開かれました。ホームページはログインプロセスなしで開かないでください。

Empty

+1

は、カスタム、それは – Saineshwar

+0

承認フィルターに内蔵され使用してuのですが正しいです、それは私のために感謝 –

+1

@Saineshwarフィルタ – Saineshwar

答えて

3

変更Indexメソッド匿名ユーザーが承認属性を追加することにより、ページにアクセスすることができないように。

それは良い@Saineshwar怒鳴るNiteshの答えを働いているはい
// GET: /Account/ 
[Authorize] 
public ActionResult Index() 
{ 
    return View(); 
} 
+0

感謝の先生の作業を正常に動作しています細かい –

関連する問題