2014-01-20 72 views
0

首先,對不起(再次)我的英語不好。如何從PropertyMethod正確返回值?

你好。我對C#.NET仍然很陌生,現在我們的任務是由我們的教授委託使用ADO.NET數據庫構建一個簡單的銀行系統。我現在唯一的問題是,我似乎無法返回我創建的PropertyMethod的值。

以下是它的工作方式:我使用自動生成的用戶名和密碼登錄,在下一個窗口中我可以存入或取出。我想在我的文本框中顯示從數據庫中檢索到的信息。

有沒有從PropertyMethod返回值的正確方法?或者我可以只用其他方式來正確檢索我想要的值?謝謝你的答案。

這裏是我的類庫的一部分,其驗證的登錄輸入和應該返回我想要的值:

編輯:我想看看調試器來跟蹤發生了什麼價值,但它們返回空值。

編輯2:刪除不必要的代碼。

編輯3:感謝您注意我的錯誤。我已經修復它們。我的程序現在工作正常。

這裏是屬性格式方法

#region pm 
public string FinalName 
{ 
get { return finalName; } 
set { finalName = value; } 
} 

    public string FinalUname 
    { 
     get { return finalUname; } 
     set { finalUname = value; } 
    } 

    public string Acnum 
    { 
     get { return acnum; } 
     set { acnum = value; } 
    } 

    public string Pass 
    { 
     get { return pass; } 
     set { pass = value; } 
    } 

    public string Actype 
    { 
     get { return actype; } 
     set { actype = value; } 
    } 

    public string Mname 
    { 
     get { return mname; } 
     set { mname = value; } 
    } 

    public string Lname 
    { 
     get { return lname; } 
     set { lname = value; } 
    } 

    public string Fname 
    { 
     get { return fname; } 
     set { fname = value; } 
    } 
    decimal bal; 

    public decimal Bal 
    { 
     get { return bal; } 
     set { bal = value; } 
    } 


    public bool Dup 
    { 
     get { return dup; } 
     set { dup = value; } 
    } 
    #endregion 

,這裏是用於認證登錄的代碼。

public bool authenticateData(string uname, string pass) 
    { 
     bool found = false; 
     mySqlConnection.Open(); 
     SqlCommand readData = new SqlCommand("AuthenticateLogin", mySqlConnection); 
     readData.CommandType = CommandType.StoredProcedure; 
     readData.Parameters.Add("@Username", SqlDbType.NVarChar).Value = uname; 
     readData.Parameters.Add("@Password", SqlDbType.NVarChar).Value = pass; 
     SqlDataReader dr; 
     dr = readData.ExecuteReader(); 
     while (dr.Read()) 
     { 
      found = true; 

      Actype = dr.GetString(3); 
      Bal = dr.GetDecimal(5); 
      Acnum = dr.GetString(6); 
      FinalName = dr.GetString(0) + " " + dr.GetString(2) + " " + dr.GetString(1); 
      break; 
     } 

     mySqlConnection.Close(); 
     return found; 
    } 
} 
} 

這裏是我的窗戶形式:

private void Transact_Load(object sender, EventArgs e) 
    { 
     //here is where my bug occurs 

     txtName.Text = da.finalName; 
     txtUsername.Text = da.finalUname; 
     txtActType.Text = da.actype; 
     txtBal.Text = da.Bal.ToString(); 

     type = txtActType.Text; 

    } 
+0

請僅發佈相關的代碼,並在發佈長代碼時指定您有問題的行號。 –

回答

0

在Windows形成你所訪問稱爲da對象的屬性...但是那是什麼?你是否真的把da設置爲一類結果?您的示例代碼不會在任何地方顯示。

authenticateData您使用datareader來填充您的結果的一些屬性,但這些屬性屬於什麼 - 包含authenticateData方法的類?什麼是da,你如何期待它具有結果的價值?