我有一个非常简短的问题,部分回答,但似乎无法奏效。
我的SQL Server及其数据库。
我想在启动时更改app.config的connectionString数据源,以使其在我的计算机名称下有效。
这是我要更改的app.config的一部分(替换 整个connectionString):
<connectionStrings>
<add name="MovieDatabaseEntities" connectionString="metadata=res://*/MovieDatabase.csdl|res://*/MovieDatabase.ssdl|res://*/MovieDatabase.msl;provider=System.Data.SqlClient;provider connection string="data source=VAIO;initial catalog=MovieDatabase;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework""providerName="System.Data.EntityClient" />
</connectionStrings>
这是我应该做的事情的代码:
string HostName = System.Environment.MachineName;
System.Configuration.Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
config.ConnectionStrings.ConnectionStrings["MovieDatabaseEntities"].ConnectionString = ("metadata=res://*/MovieDatabase.csdl|res://*/MovieDatabase.ssdl|res://*/MovieDatabase.msl;provider=System.Data.SqlClient;provider connection string="data source=" + HostName + ";initial catalog=MovieDatabase;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework"");
config.Save(ConfigurationSaveMode.Modified, true);
ConfigurationManager.RefreshSection("connectionStrings");
代码运行但似乎没有做任何事情。 App.config保持不变。 为什么呢?