¿Cómo puedo verificar y ver si un nodo tiene cierto atributo? Tengo un archivo XML que contiene varios nodos con el siguiente aspecto:Comprobar si XML-node tiene un atributo con Linq C#?
<Field From="OldString" To="NewString" />
Hasta ahora todo bien. El problema es que esta estructura está a punto de cambiar para que algunos nodos se verá así:
<Field From="OldString" To="NewString" PrefixValue="OptionalAttribute" />
Ahora, cuando el prefixValue está presente se supone que debo anteponer el valor de ese atributo en una cadena, y que no es muy difícil, pero he tenido algunos problemas cuando trato de ver si el atributo PrefixValue está presente para un nodo. En los casos en que no hay PrefixValue presente, el atributo PrefixValue no existirá en absoluto en el nodo. ¿Cómo voy a verificar para ver si el atributo existe con una expresión Linq?
Básicamente, solo quiero que se devuelva un valor nulo si el atributo falta por completo como primer paso. ¡Gracias! – Henric
Recibo el error XNode no tiene la propiedad o el método de atributo ... – Ziggler
@Ziggler: Eso sugiere que está utilizando un 'XNode' en lugar de un' XElement'. No podemos ver ninguno de sus códigos, pero básicamente quiere usar 'XElement' ... –