2013-10-25 125 views
0

下面我有一个登录功能:如何创造登录会话,并保存登录状态

[WebMethod] 
    public static bool isAccountAvailable(string userName, string passWord) 
    { 
     BDTestDataContext bdc = new BDTestDataContext(); 
     if ((from q in bdc.Accounts where q.User == userName && q.Password == passWord select q).Count() > 0) 
      return true; 
     else 
      return false; 
    } 

和jQuery

$.ajax({ 
       type: 'POST', 
       contentType: "application/json; charset=utf-8", 
       url: 'Home.aspx/isAccountAvailable', 
       data: JSON.stringify({ userName: $('#txtUserLogin').val(), passWord: $('#txtPassLogin').val() }), 
       dataType: 'json', 
       success: function (data) { 
        if (data.d == true) { 
         alert("Login success");       
        } 
        else 
         alert("Error!"); 
       } 
      }); 

我想创造会话保存登录状态,当我打开另一个页面。例如:/manager.aspx

回答

1

尝试:

[WebMethod(Description="isAccountAvailable",EnableSession=true)] 
    public static bool isAccountAvailable(string userName, string passWord) 
    { 
     bool flag = false; 
     BDTestDataContext bdc = new BDTestDataContext(); 
     if ((from q in bdc.Accounts where q.User == userName && q.Password == passWord select q).Count() > 0) 
      { 
       flag = true; 
      } 
      //No need to check else condition bcz flag is already False 
      Session["isAccountAvailable"] = flag ; 

     return flag 
    } 

编辑为运算要求:

[WebMethod(Description="isAccountAvailable",EnableSession=true)] 
    public static string isAccountAvailable(string userName, string passWord) 
    { 
     bool flag = ""; 
     string Uname=""; 
     BDTestDataContext bdc = new BDTestDataContext(); 
     if ((from q in bdc.Accounts where q.User == userName && q.Password == passWord select q).Count() > 0) 
      { 
       flag = true; 
       Uname = userName; 
      } 
      //No need to check else condition bcz flag is already False 
      Session["isAccountAvailable"] = flag ; 

     return string ; 
    } 

,并在你的成功的功能:

  success: function (data) { 
       if (data.d !="") { 
        alert(data.Uname);       
       } 
       else 
        alert("User Name is Empty"); 
      } 
+0

我想获得用户名,怎么办?兄弟,帮帮我吧! – ThinhSwen

+0

你想在webmethod或js中获得用户名的地方? –

+0

Js,Bro plz .... – ThinhSwen