Tengo algunas preguntas sobre dos formas de guardar configuraciones en el archivo web.config.appSettings vs applicationSettings. appSettings desactualizado?
AppSettings: Buscar en web.config
<appSettings>
<add key="key1" value="value1"/>
<add key="key2" value="value2"/>
</appSettings>
Uso de código subyacente:
ConfigurationManager.AppSettings["key1"];
ApplicationSettings/Propiedades (generados automáticamente mediante el uso de la 'pestaña properties' en el proyecto)
Buscar en web.config
<applicationSettings>
<Projectname.Properties.Settings>
<setting name="TestEnvironment" serializeAs="String">
<value>True</value>
</setting>
</Projectname.Properties.Settings>
</applicationSettings>
Uso de código subyacente:
Properties.Settings.Default.TestEnvironment
Así que, ¿cuál es la diferencia entre estos dos almacenamiento posibilidades de configuración en la web.config?
Por lo que puedo ver, una desventaja de la configuración de la aplicación es que usted ha modificado la configuración web.config usted mismo y las configuraciones de la aplicación no están bien tipadas, mientras que las aplicaciones son las configuraciones.
Ambos son reemplazables dentro de un proyecto de despliegue web.
Por lo que a mí respecta, hay sin uso para las configuraciones de la aplicación. ¿Me estoy perdiendo de algo? ¿Cuál es el más antiguo visto históricamente?
¡Gracias por esta información! Leí internet para encontrar esta respuesta. – Germstorm
Gracias por esta respuesta. Me preguntaba por qué no puedo acceder a las cosas almacenadas en ApplicationSettings en una Vista usando ASP.NET MVC. – user850010
Parece que los archivos DLL de la biblioteca pueden acceder a las configuraciones de aplicaciones de valor-clave antiguas en el archivo de configuración principal, pero no a las nuevas ApplicationSettings fuertemente tipadas. Si desea mantener todos sus parámetros de configuración (tanto para la aplicación como para sus bibliotecas) fuertemente tipados y en un solo lugar, debe pasar las necesidades de las bibliotecas a través de propiedades o constructores. Si tiene una clase de biblioteca estática, p. una que envía correos electrónicos y tiene muchos parámetros de configuración, es más fácil pasarlos una vez usando el antiguo bloque appSettings. En mi humilde opinión ... –