访问Linq中的Object属性到XML

时间:2014-11-17 16:12:03

标签: c# xml linq

我正在尝试使用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]);
}

0 个答案:

没有答案