C# C:添加到列表会产生空引用异常
我试图在C中使用类似字符串列表的东西 数据格式: 家庭名称:树 价值:[香蕉、印楝、帕帕亚、椰子] ==== 家庭名称:动物 价值观:[猫、狗、猪、老虎、狮子] 我试过的代码:C# C:添加到列表会产生空引用异常,c#,C#,我试图在C中使用类似字符串列表的东西 数据格式: 家庭名称:树 价值:[香蕉、印楝、帕帕亚、椰子] ==== 家庭名称:动物 价值观:[猫、狗、猪、老虎、狮子] 我试过的代码: [DataContract(Name = "FamilyValuesMap", Namespace = "")] public class FamilyValuesMap { [DataMember(Name = "FamilyName&q
[DataContract(Name = "FamilyValuesMap", Namespace = "")]
public class FamilyValuesMap
{
[DataMember(Name = "FamilyName", Order = 1)]
public string FamilyName { get; set; }
[DataMember(Name = "Values", Order = 2)]
public List<string> Values { get; set; }
}
[CollectionDataContract(Name = "FamilyValuesMaps", ItemName = "FamilyValuesMap", Namespace = "")]
public class FamilyValuesMaps : List<FamilyValuesMap>
{
}
我不确定混乱发生在哪里,代码不工作,它返回以下错误
Data: {System.Collections.ListDictionaryInternal}
HResult: -2147467261
HelpLink: null
InnerException: null
Message: "Object reference not set to an instance of an object."
Source: null
StackTrace: null
TargetSite: null
任何建议或想法都会有帮助吗?您的值列表没有实例化。见下文
var FamilyValuesMaps = new FamilyValuesMaps();
FamilyValuesMaps.Add(new FamilyValuesMap
{
FamilyName = "Trees",
Values = new List<string>()
{
"Banana",
"Neem",
"Pappaya",
"Coconut"
}
}
);
您是否需要添加如下值:values=newlist{your,values,here}这是怎么回事?这只是一个列表。等效于普通的旧字符串数组。锯齿数组是包含其他数组的数组。例如,字符串[]或ListI无法应答,因为它关闭得太快。因此,这种集合初始化值={Banana,Neem,Pappaya,couch}只调用Add方法,因此仅当属性不为null时才起作用。将其声明为公共列表值{get;set;}=new List,它将工作。
var FamilyValuesMaps = new FamilyValuesMaps();
FamilyValuesMaps.Add(new FamilyValuesMap
{
FamilyName = "Trees",
Values = new List<string>()
{
"Banana",
"Neem",
"Pappaya",
"Coconut"
}
}
);