是否可以在运行时动态创建mdf文件,并以代码优先的方式将其与 Entity Framework 6一起使用?

我需要这样的东西:

if (mydb.mdf not exists)
    createmdf();

mycontext ctx = new mycontext(mydb.mdf connection string)
ctx.CreateDatabase();

谢谢

最佳答案

试试这个

context.Database.CreateIfNotExists();

您可以在上下文构造函数中执行类似的操作
public YourDBContext(): base("YourDBConnectionString")
{
    Database.SetInitializer<YourDBContext>(new CreateDatabaseIfNotExists<YourDBContext>());
    //Database.SetInitializer<YourDBContext>(new DropCreateDatabaseIfModelChanges<YourDBContext>());
}

这将使用web.config文件中的连接字符串并尝试查找数据库。如果数据库不存在,那么它将根据您定义的模型创建数据库。

更新:

请也看看this answer

关于c# - 首先为 Entity Framework 代码快速运行LocalDB数据库,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22393229/

10-13 06:05