我正在尝试使用Linq to XML构建XML字符串。 a是IList<Object>
,x为Object
。每个对象由两个属性DisplayName和ID组成。我不确定如何引用这些特定的属性。
以下代码运行但抛出异常“无法将类型为'system.object []'的对象强制转换为'system.collections.arraylist'。”
如何访问x?
的属性XDocument InstancePickerUserResponse =
new XDocument(
new XElement("Values",
new XAttribute("Count", a.Count),
a.Select(x =>
new XElement("Value",
new XAttribute("DisplayName", ((ArrayList)x)[1]),
new XAttribute("Id", ((ArrayList)x)[0])
)
)
)
);
我应该注意,如果我使用下面的foreach循环,我就可以访问x的属性。这是因为我将x作为对象数组而不是对象进行转换。
foreach (object[] x in a)
{
Console.WriteLine(x[0]);
Console.WriteLine(x[1]);
}