2013-05-27 206 views
-2

我有一個靜態類和只讀屬性未將對象引用設置爲對象的實例。 C#.NET

public class ClaSearchUser 
{ 
    public ClaSearchUser() { } 


    public struct Attributes 
    { 
     public static readonly Attribute EMAIL_ADRESS; 
     public static readonly Attribute FIRST_NAME; 
     public static readonly PuzzleAttribute STATUS; 
    } 
} 

但是,當我做它用,我得到的電子郵件行錯誤。

foreach (DataRow mRow in data.Table.Rows) 
     { 
     String id = mRow[AttributeManager.Common.Ident.Name].ToString(); 
     String user_oid = mRow[AttributeManager.Common.Oid.Name].ToString(); 
     String email = mRow[ClaSearchUser.Attributes.EMAIL_ADRESS.Name].ToString(); 

     } 

在此先感謝

+0

在哪一行發生錯誤? – jAC

+1

你的其中一個變量爲空,就是錯誤說的。請放置一個斷點並遍歷代碼;我們不能爲你做到這一點。 – CodeCaster

回答

1

您正試圖訪問null變量的成員變量或方法。

這裏是所有變量的列表,這可能null會拋出異常,如果他們是:

  • AttributeManager.Common.Ident
  • AttributeManager.Common
  • AttributeManager
  • MROW [AttributeManager.Common.Ident.Name]
  • AttributeManager.Common.Oid
  • MROW [AttributeManager.Common.Oid.Name]
  • ClaSearchUser.Attributes.EMAIL_ADRESS
  • ClaSearchUser.Attributes
  • ClaSearchUser
  • MROW [ClaSearchUser.Attributes.EMAIL_ADRESS.Name]

哪一個真正null,是你的工作,找出。

1

ClaSearchUser.Attributes.EMAIL_ADRESS.Name將導致在給定的異常,當你不設置EMAIL_ADRESS的值。

或者它可能是您正在嘗試閱讀的其他Name的任何一個。

1

ClaSearchUser.Attributes.EMAIL_ADRESS.Name將拋出一個NullReferenceException,如果EMAIL_ADRESS爲空。 mRow[ClaSearchUser.Attributes.EMAIL_ADRESS.Name]也可以爲空,這會導致.ToString()拋出NullReferenceException。

相關問題