2013-05-15 45 views
1
 QueryClass Query; 
     string UserName = ""; 
     int UserId = 0; 


     string email = txtEmail.Text; 
     string name = txtUserName.Text; 
     string phone = txtPhone.Text; 
     byte[] buffer = new byte[100]; 

      UserName = Query.GetUserName(email); //returns a string value 

      if (UserName != null) 
      { 
       MessageBox.Show(UserName + " is already in the database"); 
      } 

      if (Query.AddNewUser(name, email, phone) == true) //returns a bool value 
      { 
       UserId = Query.GetUserId(email); //returns a int value 
       if (Query.AddNewImage(UserId, buffer) == true) //returns a bool value 
       { 
        MessageBox.Show("Done..!!"); 
       } 

      } 

      MessageBox.Show("Error"); 

我在點擊程序的插入按鈕(上面的代碼)後出現以下錯誤。NullReferenceException錯誤C#

System.NullReferenceException 
Message="Object reference not set to an instance of an object." 

我在下面的地方得到這個異常。 (我沒有檢查其他地方)的代碼只是停止這些地方,並給出了錯誤。

UserName = Query.GetUserName(email); //returns a string value 

if (Query.AddNewUser(name, email, phone) == true) //returns a bool value 

任何人都可以請幫我解決這個錯誤嗎?我正在使用Visual Studio 2010.

+0

請選擇一個更好的標題和格式化你的問題一點點。另請參閱http://tinyurl.com/so-hints –

+0

也請不要發表評論是不是用來說明明顯。 –

回答

9

您正在使用Query而未真正將其設置爲任何內容。您可能需要構造一個實例:

// Change: QueryClass Query; 
QueryClass Query = new QueryClass(); 

,而無需創建一個實例,當你調用:

UserName = Query.GetUserName(email); 

在這一點上,Query仍是默認值(這是null爲引用類型) ,嘗試使用它時你會得到一個NullReferenceException

在一個側面說明,你可能要考慮命名這個變量query(小寫),類Query(或者更好的,更具描述性的名稱),以執行正常的.NET命名指南。

+0

哦,我在那裏犯了一個錯誤。謝謝你,先生。你救了我的一天.. – Damindu

相關問題