【发布时间】:2019-07-16 16:16:17
【问题描述】:
我有这种结构的 XML,但我正在尝试访问第一个“Impuestos”以到达其中的“Traslado”,但它并没有按照我的方式工作,我是新手XML,我不知道如何指定我需要获取什么属性。
我总是得到没有“概念”的结构的值,我不想要这些值。
<cfdi:Concepto ClaveProdServ="44122016" NoIdentificacion="006001" Cantidad="8.000" ClaveUnidad="XBX" Unidad="Caja" Descripcion="BROCHE ARCHIVO BACO B-182 8CMS CAJAC/50 CAJA AZUL" ValorUnitario="33.55" Importe="268.40" Descuento="0.00">
<cfdi:Impuestos>
<cfdi:Traslados>
<cfdi:Traslado Base="268.40" Impuesto="002" TipoFactor="Tasa" TasaOCuota="0.160000" Importe="42.94"/>
</cfdi:Traslados>
</cfdi:Impuestos>
</cfdi:Concepto>
<cfdi:Impuestos TotalImpuestosTrasladados="415.76">
<cfdi:Traslados>
<cfdi:Traslado Impuesto="002" TipoFactor="Tasa" TasaOCuota="0.160000" Importe="415.76"/>
</cfdi:Traslados>
</cfdi:Impuestos>
这是我用来执行此操作的代码,此代码基于我在 Microsoft 论坛等中看到的。
public class Comprobante {
[XmlArrayItem("Concepto")]
public TConcepto[] Conceptos;
[XmlElement()]
public TImpuestos Impuestos;
}
public class TImpuestos
{
[XmlArrayItem("Traslado")]
public TTraslado[] Traslados;
}
public class TTraslado
{
[XmlAttribute()]
public string Impuesto;
[XmlAttribute()]
public string Importe;
}
使用此代码,我得到的值是 Impuesto = "002" 和 Importe = "415.76"。
但是我想要 Impuesto = "002" 和 Importe = "42.94",我需要你的帮助来指导我实现目标的最佳方式,谢谢。
【问题讨论】:
标签: c# xml serialization