Dada esta xml:Cómo consultar xsi: escriba desde un atributo utilizando Linq a XML?
<?xml version="1.0" encoding="utf-8"?>
<EntityDefinition xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<components>
<component xsi:type="TypeA">
<Property1>100</Property1>
</component>
<component xsi:type="TypeB">
<Property2>100</Property2>
</component>
</components>
</EntityDefinition>
me gustaría bucle en los componentes e instanciar cada objeto basado en el atributo xsi: tipo.
Aquí hay algo de código de LINQ to XML:
IEnumerable<XElement> components =
from c in elementsFromFile.Descendants("component")
select (XElement)c;
foreach (XElement e in components)
{
var type = e.Attributes("xsi:type");
}
Por desgracia, el “tipo var = e.Attributes línea ("xsi: type");” no funciona porque los dos puntos no están permitidos en un nombre.
¿Alguna idea sobre cómo puedo consultar el atributo xsi: type de cada elemento?
Gracias,
Rick
Bingo. Gracias. – RickB
¿Funciona en .NET Framework 3.5? –