c# - 避免将“转换为”

标签 c# asp.net entity-framework

我正在运行时创建连接字符串,但问题是双引号 (") 自动转换为 "e;。我该如何解决这个问题?

下面是我的代码:-

 System.Configuration.Configuration Config1 = WebConfigurationManager.OpenWebConfiguration("~");

                ConnectionStringsSection conSetting = (ConnectionStringsSection)Config1.GetSection("connectionStrings");

                string providerName = @"providerName=" + "\"System.Data.EntityClient\"";
                string conString = @"metadata=res://*/OWordpress.csdl|res://*/OWordpress.ssdl|res://*/OWordpress.msl;provider=System.Data.SqlClient;provider connection string=" + "\"data source=" + host + ";initial catalog=" + dbName + ";user id=" + userId + ";password=" + password + ";MultipleActiveResultSets=True;App=EntityFramework\"\'" + providerName;
                ConnectionStringSettings StringSettings = new ConnectionStringSettings("OWordpressContainer", conString);
                conSetting.ConnectionStrings.Remove(StringSettings);
                conSetting.ConnectionStrings.Add(StringSettings);
                Config1.Save(ConfigurationSaveMode.Modified); 

创建连接字符串后如下所示:-

<add name="OWordpressContainer" connectionString="metadata=res://*/OWordpress.csdl|res://*/OWordpress.ssdl|res://*/OWordpress.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=192.168.0.46;initial catalog=test4;user id=sa;password=Admin123#;MultipleActiveResultSets=True;App=EntityFramework&quot;&quot;&quot;providerName=&quot;System.Data.EntityClient&quot;" />

但是我需要如下的连接字符串:-

<add name="OWordpressContainer" connectionString="metadata=res://*/OWordpress.csdl|res://*/OWordpress.ssdl|res://*/OWordpress.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=192.168.0.46;initial catalog=OWpress;user id=sa;password=Admin123#;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

提前致谢。

最佳答案

你应该使用 following overload ConnectionStringSettings 类,它采用 providerName。
你可以这样使用它:

System.Configuration.Configuration Config1 = WebConfigurationManager.OpenWebConfiguration("~");
ConnectionStringsSection conSetting = (ConnectionStringsSection)Config1.GetSection("connectionStrings");
string providerName = "System.Data.EntityClient";
string conString = @"metadata=res://*/OWordpress.csdl|res://*/OWordpress.ssdl|res://*/OWordpress.msl;provider=System.Data.SqlClient;provider connection string=" + "\"data source=" + host + ";initial catalog=" + dbName + ";user id=" + userId + ";password=" + password + ";MultipleActiveResultSets=True;App=EntityFramework\"\'";
ConnectionStringSettings StringSettings = new ConnectionStringSettings("OWordpressContainer", conString, providerName);
conSetting.ConnectionStrings.Remove(StringSettings);
conSetting.ConnectionStrings.Add(StringSettings);
Config1.Save(ConfigurationSaveMode.Modified);

关于c# - 避免将“转换为”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30500470/

相关文章:

asp.net - 失去焦点时如何隐藏ajaxtoolkit calendarextender?

c# - 带有 null 的字符串如何给出除 null 之外的其他结果

c# - 带有 ASP.NET Web 表单的 Azure CosmosDB SDK v3

javascript - 限制用户在文本区域中粘贴最多 (40) 个字符

c# - 使用c#在IE中打开网页

c# - Button 的 Visible 属性在 Page_Init 和 Page_Load 之间变化

c# - 异步运行同步代码

.net - 创建 Entity Framework DbContext 时如何将现有模型 "attach"到现有 DbConnection?

使用 Solidworks VBA 宏的 C# 超时

c# - 遍历 C# 对象