Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何从xml url字符串获取元素id_C#_.net - Fatal编程技术网

C# 如何从xml url字符串获取元素id

C# 如何从xml url字符串获取元素id,c#,.net,C#,.net,我需要将一些xml数据导入到我的应用程序中,但我无法找到如何从product元素中获取元素属性 我没有真正尝试过任何东西,因为我不知道如何解决这个问题 这是我拥有的xml文件: <Products> <Product Id="2108"> <EAN>7081014655182</EAN> <Title>MaCo Roodschillige aardappelen</Title> <Brand>MaCoFood&l

我需要将一些xml数据导入到我的应用程序中,但我无法找到如何从product元素中获取元素属性

我没有真正尝试过任何东西,因为我不知道如何解决这个问题

这是我拥有的xml文件:

<Products>
<Product Id="2108">
<EAN>7081014655182</EAN>
<Title>MaCo Roodschillige aardappelen</Title>
<Brand>MaCoFood</Brand>
<Shortdescription>Veelzijdige rode aardappel</Shortdescription>
<Fulldescription/>
<Image>https://www.mupload.nl/img/bg193vurxpk.jpg</Image>
<Weight>1 kg</Weight>
<Price>0.00</Price>
<Category>Aardappel, groente, fruit</Category>
<Subcategory>Aardappelen</Subcategory>
<Subsubcategory>Aardappel - ongeschild</Subsubcategory>
</Product>
</Products>

7081014655182
马科·鲁德奇利格·阿达佩伦酒店
麦考福德
韦尔齐迪格·罗德·阿达佩尔
https://www.mupload.nl/img/bg193vurxpk.jpg
1公斤
0
土豚肉、果仁、水果
阿达普伦
阿达佩尔-昂格斯希尔德
这就是我获取其余属性的方式

 string xmlurl = "https://supermaco.starwave.nl/api/products";

            var doc = XDocument.Load(xmlurl);



            List<Products> itemlist = doc.Root
                .Descendants("Product")
                .Select(node => new Products
                {
                    Id = int.Parse(node.Element("Id").Value),
                    EAN = node.Element("EAN").Value,
                    Brand = node.Element("Brand").Value,
                    Shortdescription = node.Element("Shortdescription").Value,
                    Fulldescription = node.Element("Fulldescription").Value,
                    Image = node.Element("Image").Value,
                    Weight = node.Element("Weight").Value,
                    Price = double.Parse(node.Element("Price").Value),
                    Category = node.Element("Category").Value,
                    Subcategory = node.Element("Subcategory").Value,
                    Subsubcategory = node.Element("Subsubcategory").Value
                })
                .ToList();

            foreach (var item in itemlist)
            {
                Console.WriteLine("EAN : " + item.EAN );
            }

            return Ok();
string xmlurl=”https://supermaco.starwave.nl/api/products";
var doc=XDocument.Load(xmlurl);
List itemlist=doc.Root
.后代(“产品”)
.选择(节点=>新产品
{
Id=int.Parse(node.Element(“Id”).Value),
EAN=节点元素(“EAN”)值,
品牌=节点元素(“品牌”).价值,
Shortdescription=节点.元素(“Shortdescription”).值,
Fulldescription=node.Element(“Fulldescription”).Value,
Image=node.Element(“Image”).Value,
权重=节点。元素(“权重”)。值,
Price=double.Parse(node.Element(“Price”).Value),
类别=节点.元素(“类别”).值,
子类别=节点.元素(“子类别”).值,
Subsubcategory=node.Element(“Subsubcategory”).Value
})
.ToList();
foreach(itemlist中的变量项)
{
Console.WriteLine(“EAN:+item.EAN”);
}
返回Ok();
请注意,“Id=int.Parse(node.Element(“Id”).Value)”不起作用


我希望有人能告诉我如何从Product元素中获取id元素。Thx提前。

Id不是
元素
,它被称为XML
属性

只需使用
node.Attribute(“Id”).Value

尽管如此,我还是建议尝试使用
XmlSerializer
,以便管理字段的映射。搜索它,你会发现很多教程。然后,您可以使用映射元素和属性的属性来装饰
产品