I have an xml file from which I want to extract the concepts of an invoice
<cfdi:Conceptos>
<cfdi:Concepto importe="13000.00" valorUnitario="13000.00" descripcion="Servicio profesional médico" unidad="No Aplica" cantidad="1" />
<cfdi:Concepto importe="90.000" valorUnitario="90.000" descripcion="Servicio profesional médico" unidad="No Aplica" cantidad="1" />
</dfdi:Conceptos>
For this I use the following code:
List<object[]> listaConceptos = new List<object[]>();
var conceptos = from c in doc.Descendants()
where c.Name.LocalName == "Conceptos"
select c.Elements();
foreach (var item in conceptos)
{
object[] dato = new object[5];
dato[0] = item.Attributes("cantidad").First().Value;
dato[1] = item.Attributes("unidad").First().Value;
dato[2] = item.Attributes("descripcion").First().Value;
dato[3] = item.Attributes("valorUnitario").First().Value;
dato[4] = item.Attributes("importe").First().Value;
listaConceptos.Add(dato);
}
But it only works for me if it's a single concept, because it only saves me the first concept in the arrangement and the others no longer.