No puedo acceder a los valores en el archivo de configuración.
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
var clientsFilePath = config.AppSettings.Settings["ClientsFilePath"].Value;
// the second line gets a NullReferenceException
archivo .config :
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<!-- ... -->
<add key="ClientsFilePath" value="filepath"/>
<!-- ... -->
</appSettings>
</configuration>
¿Tienes alguna sugerencia de qué debo hacer?
System.Configuration
.System.Configuration
no tieneConfigurationManager
La respuesta que dtsg dio funciona:
PERO, debe agregar una referencia de ensamblaje a
Vaya a su Explorador de soluciones y haga clic derecho en Referencias y seleccione Agregar referencia . Seleccione la pestaña Ensamblajes y busque Configuración .
Aquí hay un ejemplo de mi App.config :
Que puede obtener de la siguiente manera:
fuente
System.configuration
(minúsculas).Prueba esto:
fuente
Leer de la configuración:
Deberá agregar una referencia a Config
Guardar en la configuración:
fuente
null
cadena con las recomendaciones anteriores, ¡peroProperties.Settings.Default.<keyName>
funcionó de maravilla!Estoy usando:
Donde value1 = ... y value3 = ... da un valor nulo y value2 = ... funciona
Luego decidí reemplazar la app.config interna con:
Usando VS2012 .net 4
fuente
En el
app/web.config
archivo establezca la siguiente configuración:entonces puede acceder a esto en su código al poner en esta línea:
* Tenga en cuenta que esto funciona bien para
.net4.5.x
y.net4.6.x
; pero no trabajas para.net core
. Saludos cordiales: Rafaelfuente
Volviendo a este después de mucho tiempo ...
Dada la desaparición de ConfigurationManager, para cualquiera que todavía esté buscando una respuesta a este intento (por ejemplo):
Requiere Sistema. Configuración por supuesto.
(Editó el código a algo que realmente funciona y es más fácil de leer)
fuente
Mira, hice lo que pensé que era obvio:
Si bien eso se compila, siempre devuelve nulo.
Sin embargo, esto (desde arriba) funciona:
fuente
Algunas de las respuestas parecen un poco fuera de lo normal. Aquí está mi opinión sobre 2016
Asegúrese de que
System.Configuration
esté referenciado.La pregunta es el valor de una clave de configuración de aplicaciones
Que sin duda DEBERÍA ser
Aquí hay un giro en el que puede agrupar valores (no para esta pregunta)
emails
será el valor de la clave de entorno + "_Emails"fuente
Para la aplicación web, normalmente escribiré este método y solo lo llamaré con la tecla.
fuente
Simplemente puede escribir:
porque
key
es un objeto yAppSettings
toma una cadenafuente
fuente
O puedes usar
fuente
Mi prueba simple también falló, siguiendo el consejo de las otras respuestas aquí, hasta que me di cuenta de que el archivo de configuración que agregué a mi aplicación de escritorio recibió el nombre "App1.config". Lo renombré a "App.config" y todo funcionó de inmediato como debería.
fuente
EL CÓDIGO SERÁ GENERADO AUTOMÁTICAMENTE
Para obtener un valor
Properties.Settings.Default.Name
O
Properties.Settings.Default ["nombre"]
fuente