EF Code First不创建数据库

时间:2012-10-24 11:57:13

标签: asp.net-mvc entity-framework

我已将我的代码复制到一个新项目中,但是我没有看到运行后生成的任何.mdf或.log文件。在数据连接下,我可以看到数据库中的表并与之交互,但在App_Data文件夹中没有创建任何文件。

这是我的数据库上下文类:

public class BareCupboardDB : DbContext
{
    public DbSet<Recipe> Recipes { get; set; }
    public DbSet<NutritionalValue> NutritionalValues { get; set; }
    public DbSet<RecipeStep> RecipeSteps { get; set; }
    public DbSet<Ingredient> Ingredients { get; set; }
    public DbSet<RecipeIngredient> RecipeIngredients { get; set; }
}

我的Application_Start()代码:

protected void Application_Start()
    {
        AreaRegistration.RegisterAllAreas();

        WebApiConfig.Register(GlobalConfiguration.Configuration);
        FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
        RouteConfig.RegisterRoutes(RouteTable.Routes);
        BundleConfig.RegisterBundles(BundleTable.Bundles);
        AuthConfig.RegisterAuth();

        //System.Data.Entity.Database.SetInitializer(new BareCupboard.Models.RecipeContextInitializer());
        Database.SetInitializer(new CreateDatabaseIfNotExists<BareCupboardDB>());

        var context = new BareCupboardDB();
        context.Database.Initialize(true);
    }

我的连接字符串:

<add name ="testConnection"
     connectionString="data source= .\SQLExpress;Integrated Security=SSPI;Initial Catalog=BareCupboardDB"
     providerName="System.Data.SqlClient"/>

据我所知,这绝对应该生成我的数据库文件。

我感谢任何帮助。

非常感谢。

1 个答案:

答案 0 :(得分:2)

您的连接字符串是SQL Server实例,因此您应该在那里找到表。您可以使用SQL Management Studio查看