【发布时间】:2018-02-14 14:53:00
【问题描述】:
是否可以在运行时更改数据库类型?如果是,怎么做?我正在使用 EntityFramework 6。
问题背景: 我有一个最初没有数据库访问权限的应用程序。用户首先必须通过“安装”过程并提供有关数据库的信息(包括数据库类型,例如 MySql 或 MsSql)。
如果可能,我想避免使用 2 个上下文。如有需要,我可以提供更多详细信息。
【问题讨论】:
标签: mysql sql-server entity-framework
是否可以在运行时更改数据库类型?如果是,怎么做?我正在使用 EntityFramework 6。
问题背景: 我有一个最初没有数据库访问权限的应用程序。用户首先必须通过“安装”过程并提供有关数据库的信息(包括数据库类型,例如 MySql 或 MsSql)。
如果可能,我想避免使用 2 个上下文。如有需要,我可以提供更多详细信息。
【问题讨论】:
标签: mysql sql-server entity-framework
您可以在运行时使用以下命令指定连接字符串...
DbContext 有一个构造函数,可以用连接字符串的名称或连接字符串本身重载。
public partial class EntityName: DbContext {
public EntityName(): base("name=EntityName") {}
public EntityName(string connectionString): base(connectionString) {}
}
var connString = "PopulateConnString";
Using (var ctx = new EntityName(EntityConnectionStringBuilder)
{
// Do stuff
}
【讨论】: