【问题标题】:Error in ConnectionString Keyword not supported: 'provider'不支持 ConnectionString 关键字中的错误:“提供者”
【发布时间】:2017-07-03 13:35:59
【问题描述】:
我正在使用 EntityConnectionStringBuilder 为 MySQL 数据库创建 ConnectionString,但出现错误“不支持关键字:'provider'”我不知道为什么会出现此错误
我的代码
EntityConnectionStringBuilder csb = new EntityConnectionStringBuilder();
csb.ProviderConnectionString = "Server=Ip;User Id=user;Password=123456;database=dev pooling=false";
csb.Provider = "MySql.Data.MySqlClient";
return csb.ConnectionString;
请帮我解决这个错误,我使用实体框架
【问题讨论】:
标签:
c#
mysql
connection
connection-string
【解决方案1】:
您缺少分号“;”在您的连接字符串中。我不知道修复是否可以解决这样的问题。在您的错误消息中归咎于提供程序,因为它是EntityConnectionStringBuilder 中连接字符串之后的紧接下一个属性:
EntityConnectionStringBuilder csb = new EntityConnectionStringBuilder();
csb.ProviderConnectionString = "Server=Ip;User Id=user;Password=123456;database=dev;pooling=false";
csb.Provider = "MySql.Data.MySqlClient";
return csb.ConnectionString;
我建议使用单独的SQLConnectionStringBuilder,并在其中设置Pooling 属性,如下所示:
string connectionString = "Server=Ip;User Id=user;Password=123456;database=dev";
System.Data.SqlClient.SqlConnectionStringBuilder scsb = new System.Data.SqlClient.SqlConnectionStringBuilder(connectionString);
scsb.Pooling = true;
EntityConnectionStringBuilder csb = new EntityConnectionStringBuilder();
csb.ProviderConnectionString = scsb.ConnectionString;
csb.Provider = "MySql.Data.MySqlClient";
return csb.ConnectionString;