2012-09-14 3 views
2

두 개의 텍스트 상자에 사용자 이름과 암호에 값을 입력합니다. 내가 제출을 클릭하면, 나는 테이블 어댑터가 그 정말 값이 있는지 확인하고 사용자가 로그인 할 수 있도록 데이터베이스를 확인 할Visual Studio가있는 테이블 어댑터 최종 코드

이 내 코드입니다. 캐치 부분에

protected void Submit_Click(object sender, EventArgs e) 
{ 

    //assign text from the textboxes to variables 
    string userName = TextBox1.Text; 
    string passWord = TextBox2.Text; 

    lblError.Visible = true; 

    try 
    { 

     string passwordValue = Encrypt(passWord); 

     DataSet1.tblUserDataTable dataTable = proccessedProcess.Login(userName, passwordValue); 

     if (dataTable != null & dataTable.Count!=0) 
     { 
      DataSet1.tblUserRow dataRow = dataTable[0]; 
      if (dataRow.nUserID.ToString() == "00000000-0000-0000-0000-000000000000") 
      { 
       lblError.Text = ""; 

      } 

      else if(dataRow.nUserID.ToString() != "00000000-0000-0000-0000-000000000000") 
      { 
       Session["CurrentUserID"] = dataRow.nUserID.ToString(); 
       Session["LoggedIn"] = "YES"; 
       Session["LastLogin"] = DateTime.Now.ToString(); 
       Session["UserName"] = dataRow.txtUserName; 

       HttpContext.Current.Response.Redirect("MainCustomer.aspx"); 

      } 
     } else { 


       lblError.Text = "Incorrect UserID or Password"; 

      } 

    } 

    catch (Exception E) 
    { 
     E.Message.ToString(); 
     lblError.Text = E.Message; 

    } 


} 
+0

왜 dataTable [2]를 수행하고 있습니까? 그것은 dataTable [0] – Esen

+0

이되어야 dataTable [0]으로 변경하고 실행했지만 아무 것도하지 않았지만 레이블에 텍스트 "error"가 표시되었습니다. 왜 이렇게됩니까? – user1179083

+1

if 조건이 잘못 되었기 때문입니다. datarow.nuserid.tostring()! = "00000000-0000-0000-0000-000000000000"입니다. 대신 datarow.nuserid.tostring() == "00000000-0000-0000-0000-000000000000"을 수행해야합니다. 평등과 동등해야합니다. – Esen

답변

1

당신은 E.Message.ToString(); 아무런 효과가 없습니다. 예외가 발생했는지 또는 예외가 발생했는지 알아보기 위해 inorder 레이블로 설정해야합니다.

catch (Exception E) 
{ 
    // E.Message.ToString(); 
    Throw; 
} 
+0

괜찮아요하지만 리디렉션 올바른 코드에 대한 논리입니까? – user1179083

+0

nUserID가 아닌 것 같습니다. 뭐야? GUID? 그와 상관없이 default.aspx 또는 Maincustomer.aspx로 리디렉션되어야합니다. 당신이 그다지하지 않으면 예외가 발생합니다. – Esen

+0

nUserID는 데이터베이스의 테이블에있는 고유 한 값을 가진 열입니다 ... – user1179083