修改web.config的数据库连接字符串..?

时间:2012-04-04 07:40:01

标签: c# database web-config connection-string

美好的一天!我想问一下,如果你知道如何修改web.config ..它位于一个不同的文件夹..我尝试使用这种方法,不幸的是我不工作..

// set Path to your config file
System.Configuration.ConfigurationFileMap fileMap = new ConfigurationFileMap(sWebConfig);
// open web.config 
System.Configuration.Configuration configuration = System.Configuration.ConfigurationManager.OpenMappedMachineConfiguration(fileMap);
// display message 
Console.WriteLine("Updating wizardConnection string.. Please wait for a few minutes..");
// fetch WizardConnection database connection string 
var Wizardsection = (ConnectionStringsSection)configuration.GetSection("WizardConnection");
// assign new value to wizardConnection.. Please make sure you have the correct database server. Just update server location, if need
Wizardsection.ConnectionStrings["WizardConnection"].ConnectionString = string.Format(@"server={0};database={1};integrated security=SSPI", sDatabaseServer, sDatabase);
configuration.Save();

希望很快收到你的回复..

此致

链接

3 个答案:

答案 0 :(得分:0)

您可以将不同的web.config文件用于不同的构建配置,而不是更新web.config。例如,您可以设置一个新的构建配置,即“Staging”,并将其配置为使用修改后的配置文件。 看看Web.Config transformation

答案 1 :(得分:0)

实际上你正在做的是改变配置文件,该文件被复制到包含二进制文件的文件夹(调试,发布或任何自定义编译器配置)。这足以更改应用程序的连接设置。但是,如果你想修改web.config文件,它只会修改一个外部文件,你需要File opertaions。

答案 2 :(得分:0)

您应该使用webconfigurationmanager打开您的webconfig。

试试这个

        var config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath);
        config.ConnectionStrings.ConnectionStrings["ConnectString"].ConnectionString = string.Format(@"server={0};database={1};integrated security=SSPI", sDatabaseServer, sDatabase);

        config.Save();