【发布时间】:2010-12-25 17:27:23
【问题描述】:
这是我第一个使用实体框架的 WinForm 应用程序,我必须能够更新我动态创建的实体模型的连接字符串,并且在我的 app.config 文件中我有以下连接字符串:
<add name="NCIPEntities" connectionString="metadata=res://*/NCIPModel.csdl|res://*/NCIPModel.ssdl|res://*/NCIPModel.msl;provider=System.Data.SQLite;provider connection string='data source="C:\Test\NCIP\NCIP.db3";pooling=True'" providerName="System.Data.EntityClient" />
这是我为即时更新字符串而写的,它在运行时不会抛出任何错误,但也不会将新的连接字符串保存回 app.config 文件。
private void UpdateEntityConnection()
{
StringBuilder Sb = new StringBuilder();
Sb.Append(@"metadata=res://*/NCIPModel.csdl|res://*/NCIPModel.ssdl|res://*/NCIPModel.msl;provider=System.Data.SQLite;provider""");
Sb.Append("connection string='data source=" + Settings.Default.Directory + "\\NCIP.db3;pooling=True'");
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
config.ConnectionStrings.ConnectionStrings["NCIPEntities"].ConnectionString = Sb.ToString();
config.Save(ConfigurationSaveMode.Minimal);
ConfigurationManager.RefreshSection("connectionStrings");
}
有没有人看到我做错了什么,因为我没有。
谢谢。
【问题讨论】:
标签: c# entity-framework