gpt4 book ai didi

linq-to-xml - XLINQ : Missing element in xml

转载 作者:行者123 更新时间:2023-12-02 05:55:03 26 4
gpt4 key购买 nike

我有以下 xml

<students>
<student>
<id>12</id>
<name>Mohsan</name>
</student>
<student>
<id>2</id>
</student>
<student>
<id>3</id>
<name>Azhar</name>
</student>
</students>

请注意,在 2 中缺少名称元素。

我必须使用 Linq to XML 读取此 xml

我使用下面的代码让所有学生..

请建议我改进这段代码

var stds = from std in doc.Descendants("student")
select new
{
ID = std.Element("id").Value,
Name = (std.Element("name")!=null)?std.Element("name").Value:string.Empty
};

最佳答案

您可以利用一个事实,即有一个 explicit conversion from XElement to string ,它为 null XElement 引用返回 null。然后,您可以使用 null 合并运算符从 null 变为空字符串:

var stds = from std in doc.Descendants("student")
select new
{
ID = std.Element("id").Value,
Name = (string) std.Element("name") ?? "";
};

关于linq-to-xml - XLINQ : Missing element in xml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2272763/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com