Actualizar una clave en app.config

24/06/2005 - 11:22 por Baldor | Informe spam
Guardo variables de configuración en el app.config de la aplicación.
Las leo con:

x =
System.Configuration.ConfigurationSettings.AppSettings("NombreClave")

Pero, ¿como se puede actualizar de nuevo este valor en el fichero .config?

Preguntas similare

Leer las respuestas

#1 Peque
04/07/2005 - 19:35 | Informe spam
Hola Pedro, soy novata en esto del VB NET, pero al igual que Baldor, tengo
la necesidad de actualizar un dato en el archivo config en una pequeña
aplicación que estoy desarrollando.tu mencionas dos posibles maneras para
hacerlo, me podrias dar un ejemplo de como seria tomando la opcion 1?, te lo
agradeceria mucho.

Saludos.

"Pedro Luna Montalvo, [MVP VB.NET]" wrote:

Saludos,

Como ves existe una facilidad para leer las claves de configuracion de la
aplicacion por medio de ConfigurationSettings.AppSettings, pero descubriste
su principal falta, no tiene un mecanismo que facilite su actualizacion o
modificacion.

Para ello te recomiendo dos alternativas:

1. Leer el archivo como texto o como documento XML y modificar y guardar los
cambios. Es preferible que lo hagas como documento XML, asi te evitas
cometer algun error de sintaxis y que se inhabilite el archivo de
configuracion completamente, algo muy malo que ocurra en el equipo de un
usuario.

2. Utilizar el Configuration Application Block, que incluye codigo (si
quieres) o los ensamblados de una extension para el manejo de archivos de
configuracion. Este Application Block te permite entre otras cosas, manejar
secciones personalizadas dentro del archivo de configuracion, cifrar
informacion en el mismo archivo, entre otras cosas. Revisa el siguiente URL:
http://msdn.microsoft.com/library/e...config.asp


Saludos,
Pedro Luna, [MVP VB.NET]
Gye, Ecu



"Baldor" escribió en el mensaje
news:%
> Guardo variables de configuración en el app.config de la aplicación.
> Las leo con:
>
> x =
> System.Configuration.ConfigurationSettings.AppSettings("NombreClave")
>
> Pero, ¿como se puede actualizar de nuevo este valor en el fichero .config?
>



Respuesta Responder a este mensaje
#2 Pedro Luna Montalvo, [MVP VB.NET]
06/07/2005 - 20:01 | Informe spam
Saludos,

Claro que si!!

Te pongo un ejemplo de la alternativa 1, es decir, guardar manualmente los
datos en el archivo de configuracion de la aplicacion:

Asumamos el siguiente archivo de configuracion:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="clave1" value="valor1" />
<add key="clave2" value="valor2" />
</appSettings>
</configuration>

el siguiente codigo actualizaria los valores de las claves "clave1" y
"clave2":

Dim xmlNode As XmlNode

' Sacamos la ruta del archivo de configuracion
Dim sRutaConfig As String = [Assembly].GetExecutingAssembly().Location
+ ".config"

' Cargamos el archivo como documento XML
Dim xmlDoc As New XmlDocument
xmlDoc.Load(sRutaConfig)

' Formato del query de busqueda del nodo
Dim sXmlQuery As String = "configuration/appSettings/add[@key='{0}']"

' Buscamos el nodo que corresponde a clave 1
XmlNode = xmlDoc.SelectSingleNode(String.Format(sXmlQuery, "clave1"))
xmlNode.Attributes("value").Value = "NuevoValor1" ' Nuevo valor!

' Buscamos el nodo que corresponde a clave 2
xmlNode = xmlDoc.SelectSingleNode(String.Format(sXmlQuery, "clave2"))
xmlNode.Attributes("value").Value = "NuevoValor2" ' Nuevo valor!

' Guardamos el archivo de configuración
xmlDoc.Save(sRutaConfig)


No olvidar agregar referencias al proyecto a: System.Xml, y asimismo que se
tengan las debidas importaciones a los espaciones de nombre:
System.Reflection
System.Xml



Saludos,
Pedro Luna, [MVP VB.NET]
Gye, Ecu

"Peque" escribió en el mensaje
news:

Hola Pedro, soy novata en esto del VB NET, pero al igual que Baldor, tengo
la necesidad de actualizar un dato en el archivo config en una pequeña
aplicación que estoy desarrollando.tu mencionas dos posibles maneras
para
hacerlo, me podrias dar un ejemplo de como seria tomando la opcion 1?, te
lo
agradeceria mucho.

Saludos.

"Pedro Luna Montalvo, [MVP VB.NET]" wrote:

Saludos,

Como ves existe una facilidad para leer las claves de configuracion de la
aplicacion por medio de ConfigurationSettings.AppSettings, pero
descubriste
su principal falta, no tiene un mecanismo que facilite su actualizacion o
modificacion.

Para ello te recomiendo dos alternativas:

1. Leer el archivo como texto o como documento XML y modificar y guardar
los
cambios. Es preferible que lo hagas como documento XML, asi te evitas
cometer algun error de sintaxis y que se inhabilite el archivo de
configuracion completamente, algo muy malo que ocurra en el equipo de un
usuario.

2. Utilizar el Configuration Application Block, que incluye codigo (si
quieres) o los ensamblados de una extension para el manejo de archivos de
configuracion. Este Application Block te permite entre otras cosas,
manejar
secciones personalizadas dentro del archivo de configuracion, cifrar
informacion en el mismo archivo, entre otras cosas. Revisa el siguiente
URL:
http://msdn.microsoft.com/library/e...config.asp


Saludos,
Pedro Luna, [MVP VB.NET]
Gye, Ecu



"Baldor" escribió en el mensaje
news:%
> Guardo variables de configuración en el app.config de la aplicación.
> Las leo con:
>
> x >> > System.Configuration.ConfigurationSettings.AppSettings("NombreClave")
>
> Pero, ¿como se puede actualizar de nuevo este valor en el fichero
> .config?
>



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida