Bueno pues, soy nuevo aqui y en lo que estoy es en actualizar un archivo xml, tengo el archivo como sigue
<connectionStrings>
<!--Variables de Conexion a DB!-->
<add name="a" connectionString="conexioa"/>
<add name="b" connectionString="conexionb" />
<add name="c" connectionString="conexionc" />
<add name="d" connectionString="conexiond" />
<add name="e" connectionString="conexione" />
</connectionStrings>
mi metodo es el siguiente
public void ejecXML(string cadenaDRP, string ruta, string cadOriginal, string llave)
{
Script script = new Script();
XmlDocument xDoc = new XmlDocument();
xDoc.Load(ruta);
XElement element = XElement.Load(ruta);
XmlNodeList conexion = xDoc.GetElementsByTagName("connectionStrings");
XmlNodeList lista = ((XmlElement)conexion[0]).GetElementsByTagName("add");
foreach (XmlElement nodo in lista)
{
string nNombre = nodo.GetAttribute("name");
string conn = nodo.GetAttribute("connectionString");
if (llave == nNombre && cadOriginal == conn)
{
element.Element("connectionStrings").Element("add" ).Attributes("connectionString").FirstOrDefault(). Value = cadenaDRP;
element.Add(lista);
}
} element.Save(ruta);
}
en este obtengo el nodo connectionStrings con sus elementos add y sus atributos name y connectionString, todo va perfecto cuando pasa por el foreach si recorre por los 4 elementos add del nodo connectionStrings pero cuando actualizo el valor del atributo connectionString siempre se acutaliza el primer elemento add, que podria estar pasando