我收到类型
的未处理异常发生'System.NullReferenceException' UgenityAdministrationConsole.exe
附加信息:对象引用未设置为的实例 对象
这发生在我的类构造函数中。
这是我的代码:
public static object dummyObject = new object(); // create a dummy object to use for initializing various things
public class EntityValuesClass
{
public List<EntityValue> EntityValues { get; set; }
public EntityValuesClass(EntityType _entType)
{
Type t;
PropertyInfo[] propInfoArray;
EntityValue entValue = new EntityValue();
t = entityTypeToType[_entType];
propInfoArray = t.GetProperties();
foreach (PropertyInfo propItem in propInfoArray)
{
entValue.FieldName = propItem.Name;
entValue.FieldValue = dummyObject;
EntityValues.Add(entValue); <------ this is where the error is happening
}
}
}
public class EntityValue
{
public string FieldName { get; set; }
public object FieldValue { get; set; }
}
答案 0 :(得分:2)
EntityValues
为空。你从来没有初始化它。
答案 1 :(得分:2)
您必须先初始化EntityValue
属性:
EntityValues = new List<EntityValue>();
另一方面,根据CA1002: Do not expose generic lists,您应该考虑将班级更改为:
private List<EntityValue> _entityValues = new List<EntityValue>();
public List<EntityValue> EntityValues
{
get { return _entityValues; }
}
答案 2 :(得分:2)
EntityValues
为null
,因为您没有为其分配任何内容。
您可以将EntityValues = new List<EntityValue>();
添加到构造函数的开头以初始化它。