SQL ConnectionString in web.config and global.asax implications
        Posted  
        
            by rlb.usa
        on Stack Overflow
        
        See other posts from Stack Overflow
        
            or by rlb.usa
        
        
        
        Published on 2010-03-23T19:22:38Z
        Indexed on 
            2010/03/23
            19:23 UTC
        
        
        Read the original article
        Hit count: 392
        
This is going to sound very odd, but I have a web.config like this:
  <connectionStrings>
    <remove name="LocalSqlServer"/>
     <add name="LocalSqlServer" connectionString="Data Source=BACKUPDB;..." providerName="System.Data.SqlClient"/> 
  </connectionStrings>
And a global.asax like this:
void Session_Start(object sender, EventArgs e) 
{
    // Code that runs when a new session is started
    if (Application["con"] == null || Application["con"] == "")
    {
        Application["con"] = "Data Source=PRODUCTIONDB;..."; 
    }
}
And EVERYWHERE in my code, I reference my ConnectionStrings like this:
SqlConnection con = new SqlConnection(Convert.ToString(HttpContext.Current.Application["con"]));
However, I see that everything I do inside this application goes to BACKUP db instead of PRODUCTIONDB. What is going on, how could this happen, and why? It doesn't make any sense to me, and it got me into a lot of trouble. We use LocalSqlServer string for FormsAuthentication.
© Stack Overflow or respective owner