System.NullReferenceException:将项目添加到列表时
System.NullReferenceException: When adding item to a list
我在尝试将项目添加到列表时遇到问题。我看到很多问题,但我仍然不明白我的情况。
这是我的定义:
public class DBStatus
{
[DataMember]
public DBOperation Type { get; set; }
[DataMember]
public List<DBMessageType> Message { get; set; }
[DataMember]
public List<string> InnerException { get; set; }
}
我声明了这个 class 并试图添加一个项目。
private void button19_Click_1(object sender, EventArgs e)
{
DBStatus dbstst = new DBStatus();
dbstst.Message.Add(DBMessageType.INVALID_OR_EXPIRED_FUNCTION_REQUEST);
dbstst.InnerException.Add("testing code");
int k = 0;
}
添加项目时我得到 System.NullReferenceException。
错误信息:"System.NullReferenceException: 'Object reference not set to an instance of an object.'"
我知道我的最后两个列表项是 null post 声明,为什么我不能添加?
感谢任何帮助。
谢谢,
PG
List默认为null,添加元素前需要初始化列表
选项 1:
private void button19_Click_1(object sender, EventArgs e)
{
DBStatus dbstst = new DBStatus();
dbstst.Message = new List<DBMessageType>();
dbstst.Message.Add(DBMessageType.INVALID_OR_EXPIRED_FUNCTION_REQUEST);
dbstst.InnerException = new List<string>();
dbstst.InnerException.Add("testing code");
int k = 0;
}
选项 2:
您也可以通过 class 构造函数执行此操作:
public class DBStatus
{
[DataMember]
public DBOperation Type { get; set; }
[DataMember]
public List<DBMessageType> Message { get; set; }
[DataMember]
public List<string> InnerException { get; set; }
public DBStatus(){ //initialize here
Message = new List<DBMessageType>();
InnerException = new List<string>();
}
}
我在尝试将项目添加到列表时遇到问题。我看到很多问题,但我仍然不明白我的情况。 这是我的定义:
public class DBStatus
{
[DataMember]
public DBOperation Type { get; set; }
[DataMember]
public List<DBMessageType> Message { get; set; }
[DataMember]
public List<string> InnerException { get; set; }
}
我声明了这个 class 并试图添加一个项目。
private void button19_Click_1(object sender, EventArgs e)
{
DBStatus dbstst = new DBStatus();
dbstst.Message.Add(DBMessageType.INVALID_OR_EXPIRED_FUNCTION_REQUEST);
dbstst.InnerException.Add("testing code");
int k = 0;
}
添加项目时我得到 System.NullReferenceException。
错误信息:"System.NullReferenceException: 'Object reference not set to an instance of an object.'"
我知道我的最后两个列表项是 null post 声明,为什么我不能添加?
感谢任何帮助。
谢谢, PG
List默认为null,添加元素前需要初始化列表
选项 1:
private void button19_Click_1(object sender, EventArgs e)
{
DBStatus dbstst = new DBStatus();
dbstst.Message = new List<DBMessageType>();
dbstst.Message.Add(DBMessageType.INVALID_OR_EXPIRED_FUNCTION_REQUEST);
dbstst.InnerException = new List<string>();
dbstst.InnerException.Add("testing code");
int k = 0;
}
选项 2: 您也可以通过 class 构造函数执行此操作:
public class DBStatus
{
[DataMember]
public DBOperation Type { get; set; }
[DataMember]
public List<DBMessageType> Message { get; set; }
[DataMember]
public List<string> InnerException { get; set; }
public DBStatus(){ //initialize here
Message = new List<DBMessageType>();
InnerException = new List<string>();
}
}