【发布时间】:2014-09-01 08:42:22
【问题描述】:
我正在使用实体框架,在我的解决方案中有 9 个项目,它会扩大。我的问题是在 .config 文件中说明连接字符串。当我这样做时,我必须为 4-5 个项目声明连接字符串,当我想更改我的连接时,更改 ConnectionStrings 成为 4 或 5 个项目的义务。我想在 DbContext 构造函数中设置连接字符串。 DbContext 可以为我提供这种能力,但我无法定义 providerName。所以上下文的 dbconnection 自动使用 SqlClient 但我想使用 MySql 提供程序。我的连接字符串是:
"Server=localhost;Database=xxx;Uid=auth_windows;Persist Security Info=True;User=root;Password=yyyyyy;"
我也不能在“Provider = MySql.Data.MySqlClient”之类的连接字符串中指定提供程序名称。它抛出异常“不支持提供者关键字”。
我正在更改我的问题以便更易于理解。
总之我想要这个。
public class XxContext : DbContext
{
public XxContext()
{
this.Database.Connection.Provider = "MySql.Data.MySqlClient";
this.Database.Connection.ConnectionString = "Server=localhost bla bla bla";
}
}
但我不知道如何说明您应该使用 MySql.Data.MySqlClient(没有配置文件)。可能吗 ?如果是,我该怎么办?
【问题讨论】:
-
所以你想在代码或配置中更改 Provider?
-
我想修改代码
标签: c# mysql entity-framework