使用 XDocument 类读取 xml 数据
我有一个 xml 文件 (test.xml)
<root loc-ver="1.0">
<data name="String1" xml:space="preserve">
<value loc="root_data_value_2">Description number1</value>
</data>
<data name="String2" xml:space="preserve">
<value loc="root_data_value_3">Description number 2</value>
</data>
</root>
现在,如果
我指定名称 =“String1”,我应该得到的值为“Description number1”
我指定名称 =“String2”,我应该得到的值为 Description number2
我正在尝试这种方法,但没有结果
XDocument doc = XDocument.Load(@"D:\test.xml");
string search = "String10";
var lv1s = from lv1 in doc.Descendants("data")
select lv1.Name;
I have an xml file say (test.xml)
<root loc-ver="1.0">
<data name="String1" xml:space="preserve">
<value loc="root_data_value_2">Description number1</value>
</data>
<data name="String2" xml:space="preserve">
<value loc="root_data_value_3">Description number 2</value>
</data>
</root>
Now, if
I specify the name = "String1", I should get the value as "Description number1"
I specify the name = "String2", I should get the value as Description number2
I am trying with the approach, by no result
XDocument doc = XDocument.Load(@"D:\test.xml");
string search = "String10";
var lv1s = from lv1 in doc.Descendants("data")
select lv1.Name;
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
听起来像您想要的:
您应该考虑如果没有一个结果,您想要发生什么。这是一个错误状态吗(如果是这样,请使用
Single()
),是否应该使用所有结果(如果是这样,只需迭代query
),是否应该使用第一个结果result 如果可用,则忽略它(如果有,请使用 FirstOrDefault() 并检查结果是否为 null),如果您使用第一个结果,则如果没有任何结果,则会出现错误(如果是这样,请使用First()
)。Sounds like you want:
You should consider what you want to happen if there isn't exactly one result. Is that an error state (if so, use
Single()
), should you use all the results (if so, just iterate overquery
), should you use the first result if it's available, and ignore it otherwise (if so, useFirstOrDefault()
and check if the result is null), should you use the first result, and it's an error if there aren't any (if so, useFirst()
).