fork download
  1. /*
  2. ¿Cómo agregar atributo a documento XML?
  3. https://es.stackoverflow.com/q/132219/127
  4. */
  5.  
  6. using System;
  7. using System.Xml;
  8.  
  9. public class Test
  10. {
  11. public static void Main()
  12. {
  13. //generar el doc
  14. string xmlOriginal = @"
  15. <padre>
  16. <hijo id=""576hsdj"">
  17. </hijo>
  18. </padre>";
  19. XmlDocument xmlDoc = new XmlDocument();
  20. xmlDoc.LoadXml(xmlOriginal); // <-- acá lo estoy cargando manualmente desde el string
  21. //xmlDoc.Load(path);
  22.  
  23. //seleccionar el nodo
  24. XmlNode nodoHijo = xmlDoc.SelectSingleNode("//*[@id='576hsdj']");
  25.  
  26. //agregarle el atributo
  27. XmlAttribute atr = xmlDoc.CreateAttribute("type");
  28. atr.Value = "modeloAAA";
  29. nodoHijo.Attributes.SetNamedItem(atr);
  30.  
  31. //guardar
  32. //xmlDoc.Save(path);
  33. //o imprimir en consola
  34. XmlTextWriter writer = new XmlTextWriter(Console.Out);
  35. writer.Formatting = Formatting.Indented;
  36. xmlDoc.WriteTo( writer );
  37. writer.Flush();
  38. Console.WriteLine();
  39. }
  40. }
Success #stdin #stdout 0.05s 133824KB
stdin
Standard input is empty
stdout
<padre>
  <hijo id="576hsdj" type="modeloAAA">
  </hijo>
</padre>