Foros del Web » Programación para mayores de 30 ;) » .NET »

Sobreescribir un XmlDocument

Estas en el tema de Sobreescribir un XmlDocument en el foro de .NET en Foros del Web. Hola gente tengo una dll con unos métodos estáticos de la siguiente forma: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código C: Ver original static public string CadenaConexion ( bool ...
  #1 (permalink)  
Antiguo 14/06/2010, 17:11
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 18 años, 9 meses
Puntos: 50
Sobreescribir un XmlDocument

Hola gente

tengo una dll con unos métodos estáticos de la siguiente forma:

Código C:
Ver original
  1. static public string CadenaConexion(bool soloDatos)
  2. static public bool GuardaCadenaConexion(string servidor, string baseDeDatos, string user, string password)

Cuando cargo la aplicación se ejecuta el primer evento, este primer evento carga unos datos de un xml de la siguiente manera:


Código C:
Ver original
  1. XPathDocument documentoXml = null;
  2.             string archivoConfiguracion = string.Format("{0}\\{1}.xml",
  3.                 Path.GetDirectoryName(Assembly.GetAssembly(typeof(Configuracion)).CodeBase), "configuracion");
  4.             archivoConfiguracion = archivoConfiguracion.Replace("file:\\", "");
  5.             if (File.Exists(archivoConfiguracion))
  6.             {
  7.                 if (new FileInfo(archivoConfiguracion).Extension.Contains("xml"))
  8.                 {
  9.                     string xmlDoc = File.ReadAllText(archivoConfiguracion);
  10.                     Stream str = new MemoryStream(Encoding.ASCII.GetBytes(xmlDoc));
  11.                     XmlTextReader lector = new XmlTextReader(str);
  12.                     documentoXml = new XPathDocument(lector);
  13.                     lector.Close();
  14.                     if (documentoXml == null)
  15.                     {
  16.                         throw new System.Exception("El archivo de configuración no se cargo correctamente.");
  17.                     }
  18.                 }
  19.                 else
  20.                 {
  21.                     throw new TypeFileException("El tipo de archivo seleccionado no puede cargarse como uso de configuración del sistema.");
  22.                 }
  23.             }
  24.             else
  25.             {
  26.                 throw new FileNotFoundException("Archivo de configuración no se localizó o fue borrado del sistema.");
  27.             }

hasta ahí todo bien.

El problema viene cuando quiero guardar algunas modificaciones de un XmlDocument en la siguiente función:


Código C:
Ver original
  1. XmlDocument documento = new XmlDocument();
  2.             string archivoConfiguracion = string.Format("{0}\\{1}.xml",
  3.              Path.GetDirectoryName(Assembly.GetAssembly(typeof(Configuracion)).CodeBase), "configuracion");
  4.             archivoConfiguracion = archivoConfiguracion.Replace("file:\\", "");
  5.  
  6.             string xmlDoc = File.ReadAllText(archivoConfiguracion);
  7.             Stream str = new MemoryStream(Encoding.ASCII.GetBytes(xmlDoc));
  8.             documento.Load(str);
  9.            
  10.             bool salida = false;
  11.  
  12. /*aqui va mi proceso de validaciones*/
  13.  
  14.  
  15.             documento.Save(archivoConfiguracion);

Pero me indica que no puedo sobreescribir el archivo por que según esta abierto, como puedo guardar o sobreescribir el archivo siendo que en ningún momento lo abro, solo obtengo el texto como tal, espero su ayuda.
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:46.