2016-03-28 18 views
1

MVC 4 uygulama denetleyicim tarafında UserId mange oturumunun denetlenip denetlenmediğini görmek için IsPostback'i nasıl kullanabilirsiniz? kodunun altına gibi: o anki sayfanın aynı ya da değilNasıl kullanılır? MVC 4 denetleyici tarafında IsPostback

private bool IsPostBack() 
    { 
     bool isPost = string.Compare(Request.HttpMethod, "POST", 
     StringComparison.CurrentCultureIgnoreCase) == 0; 
     if (Request.UrlReferrer == null) return false; 

     bool isCurrentUrl = string.Compare(Request.Url.AbsolutePath, 
     Request.UrlReferrer.AbsolutePath, 
     StringComparison.CurrentCultureIgnoreCase) == 0; 

     return isPost && isCurrentUrl; 
    } 

cevap

1

ilerlemek var sen url Yönlendireni kontrol edebilirsiniz Bunu yapmak, farklı http yöntemi öznitelikleri ekleyerek kodunuzu iki farklı işleve ayırmaktır. ! Http yöntemi SONRASI ise ASP.NET Web yılında

[HttpGet] 
    public ActionResult Login() 
    { 
     if (Session["UserId"] != null) 
     { 
      return RedirectToAction("Users", "UsersList"); 
     } 
     else 
     { 
      return RedirectToAction("Index", "Index"); 
     } 
    } 

, IsPostBackgerçek döndürüyor Forms:

Örneğin, bu IsPostBackbir eşdeğerdir.

Yani ! istek yöntemi ise kontrol için GET olduğunu IsPostBack (ancak bu teknik değil MVC Web Forms kullanılır).

+0

#Fedri Qrueger aslında benim güdüm ilk kez kullanıcı oturum açtıktan sonra başarılı bir şekilde oturum açtıktan sonra herhangi bir sayfa benim uygulamadan çalıştırılıyor sonra benim userid saklıyor oturumu kaydediyorum veya oturumda değil, userid oturum yönetmek im o zaman ben giriş sayfası diğer bilge excution sayfasına yönlendirmek, bu tür akış –

+0

sonra özel kimlik doğrulama özelliğini kullanarak düşünülebilir. http://www.bradygaster.com/post/custom-authentication-with-mvc-3.0 ve web yapılandırmasında ayarlanmış

+0

#Fedri Qrueger Üzgünüm, tam olarak neye benzediğimin bir yolu değil, örnek kod türünün üstünde başka yollar var mı? –

0

doğru yolu arasında ise

 if (!IsPostback) 
     { 
      if (Session["UserId"] != null) 
      { 
       return RedirectToAction("Users", "UsersList"); 
      } 
      else 
      { 
       return RedirectToAction("Index", "Index"); 
      } 
     } 

herhangi bir idea.Thanks