C# 这种XML解析有效吗? 公共环境(int id) { xdocumentxml=XDocument.Parse(LoadFromService(id)); ID=xml.Element(“envio”) .要素(“de”).价值; De=xml.Element(“envio”) .要素(“de”).价值; Para=xml.Element(“envio”) .要素(“第款”).价值; Fecha=xml.Element(“envio”) .要素(“fecha”).价值; description=xml.Element(“envio”) .要素(“描述”).价值; } /* * * *塞尔吉奥 *加布里埃拉 * 10/10/2010 *30公斤。 * * */

C# 这种XML解析有效吗? 公共环境(int id) { xdocumentxml=XDocument.Parse(LoadFromService(id)); ID=xml.Element(“envio”) .要素(“de”).价值; De=xml.Element(“envio”) .要素(“de”).价值; Para=xml.Element(“envio”) .要素(“第款”).价值; Fecha=xml.Element(“envio”) .要素(“fecha”).价值; description=xml.Element(“envio”) .要素(“描述”).价值; } /* * * *塞尔吉奥 *加布里埃拉 * 10/10/2010 *30公斤。 * * */,c#,linq,linq-to-xml,xml-parsing,C#,Linq,Linq To Xml,Xml Parsing,我想提取每一点信息以及根标记Envio的ID属性 有什么帮助吗?嗯,您似乎没有对属性(id)进行任何操作 还有,;与.Value不同,cast更受欢迎,因为它将通过返回null来处理丢失的数据 public Envio(int id) { XDocument xml = XDocument.Parse(LoadFromService(id)); ID = xml.Element("envio") .Element("de").Value; De

我想提取每一点信息以及根标记Envio的ID属性


有什么帮助吗?

嗯,您似乎没有对属性(id)进行任何操作

还有,;与.Value不同,cast更受欢迎,因为它将通过返回null来处理丢失的数据

public Envio(int id)
{
    XDocument xml = XDocument.Parse(LoadFromService(id));
    ID = xml.Element("envio")
            .Element("de").Value;

    De = xml.Element("envio")
            .Element("de").Value;

    Para = xml.Element("envio")
            .Element("para").Value;

    Fecha = xml.Element("envio")
            .Element("fecha").Value;

    Descripcion = xml.Element("envio")
            .Element("descripcion").Value;
}



/*
    * <xml>
    *  <envio id="123">
    *      <de>Sergio</de>
    *      <para>Gabriela</para>
    *      <fecha>10/10/2010</fecha>
    *      <descripcion>Una moto de 30kg.</descripcion>
    *  </envio>
    * </xml>
    */

您的
xml
变量是包含单个
标记的XDocument对象

因此,
xml.Element(“envio”)
为空

相反,您需要编写
xml.Root.Element(“envio”)

SomeProp = (string)node.Element("foo");