Tenemos un sitio web ASP.NET que usa el estado de sesión del servidor SQL. El estado se configura en Web.config
como:Configurar estado de sesión ASP.NET en tiempo de ejecución
<sessionState mode="SQLServer" sqlConnectionString="data source=TheServer;
User ID=TheUser;password=ThePassword;" cookieless="false" timeout="480"/>
Pero hay tres ambientes (desarrollo/montaje/producción). Todas las otras cadenas de conexión se configuran como:
<configuration>
<connectionStrings>
<add name="Development_Db1" connectionString="..."/>
<add name="Production_Db1" connectionString="..."/>
</connectionStrings>
</configuration>
En tiempo de ejecución, elegimos uno para conectarse a la base de datos basado en host. Desafortunadamente, la cadena de conexión del estado de la sesión parece estar codificada en el web.config
.
¿Hay alguna forma de configurar el estado de la sesión del servidor SQL en tiempo de ejecución o hacer que se refiera a una cadena de conexión de la sección connectionStrings
?
¿Básicamente tiene información de todos los entornos en un archivo de configuración? ¿No quieres usar un archivo por entorno? –
@ GôTô: Sí, toda la información para todos los entornos está en un archivo de configuración. Trabajando en un sistema relativamente antiguo aquí, mi trabajo es cambiarlo del estado en proceso al estado sqlserver. – Andomar
Esta es una buena pregunta en general, pero no me gusta la idea de mantener todas las cadenas de conexión en un solo lugar. Demasiadas posibilidades de que la producción escriba en el entorno de desarrollo o viceversa ... – RedFilter