如何从ASP.Net中的xml通过ID读取特定数据

时间:2019-09-22 01:04:13

标签: c# asp.net xml

我想根据其ID选择特定数据,这是xml的示例

<?xml version="1.0" encoding="ISO-8859-1"?>
<productdetails>
    <product>
        <Id>1</Id>
        <product_name>banana</product_name>
        <product_price>5.00</product_price>
        <product_description>its banana</product_description>
        <product_quantity>12</product_quantity>
    </product>
    <product>
        <Id>2</Id>
        <product_name>mango</product_name>
        <product_price>10.00</product_price>
        <product_description>its mango</product_description>
        <product_quantity>12</product_quantity>
    </product>
    <product>
        <Id>3</Id>
        <product_name>orange</product_name>
        <product_price>3.00</product_price>
        <product_description>its orange</product_description>
        <product_quantity>1</product_quantity>
    </product>
    <product>
        <Id>4</Id>
        <product_name>apple</product_name>
        <product_price>4.00</product_price>
        <product_description>its apple</product_description>
        <product_quantity>1</product_quantity>
    </product>
</productdetails>

我想做的是将它们存储回另一个但临时的xml文件中,然后在GridView中进行计算。

1 个答案:

答案 0 :(得分:0)

希望我能正确理解您的查询。您可以使用Linq根据其ID搜索特定数据。例如,

var root = XElement.Parse(xmlString);  
var idToSearch = 1;
var result= root.Elements("product")
                .Where(x=>Convert.ToInt32(x.Element("Id").Value)==idToSearch)
                .Select(x=>new 
                           {
                             ProductName=x.Element("product_name").Value,
                             Price=x.Element("product_price").Value
                           });