gpt4 book ai didi

c# - 如何在C#中获取包含特定 "price"的XML元素范围

转载 作者:太空宇宙 更新时间:2023-11-03 19:40:26 24 4
gpt4 key购买 nike

我正在尝试使用 linq 获取某个价格范围内的 XML 文件的一系列值,我不太确定该怎么做,但我知道如何获取每个元素的价格。

我试图列出每个元素的价格,然后应用范围内的所有元素,但我不知道如何保留品牌,因为我必须在价格范围内显示现有汽车的品牌.

XML:

 <Garage>
<Car id="001">
<Brand>Foo</Brand>
<Price>100</Price>
</Car>
<Car id="002">
<Brand>Bar</Brand>
<Price>130</Price>
</Car>
<Car id="003">
<Brand>Re</Brand>
<Price>110</Price>
</Car>
</Garage>

代码:

 var xmlStr = File.ReadAllText(@"C:\Path\To\Xml");
var str = XElement.Parse(xmlStr);
var carInRange = str.Elements("Car").Where(x => x.Element("Price").Value.Equals("100")).ToList();

显然我只得到“100”值,但我希望得到例如 100 到 120 之间的范围(仅作为示例)但不确定如何去做。

最佳答案

您可能希望将价格解析为 decimal 或其他数字类型。然后您可以执行范围检查。例如

var carInRange = str.Elements("Car")
.Where(x => decimal.TryParse(x.Element("Price").Value, out decimal price)
&& price < 100m))
.ToList();

关于c# - 如何在C#中获取包含特定 "price"的XML元素范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54189563/

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