2015-12-03 48 views
0

我有一个使用Entity Framework 7 RC1的ASP.NET项目。我正尝试使用迁移来创建我的数据库。我创建了一个初始迁移,并在我的项目中查看生成的代码。在创建迁移后立即运行dnx ef migrations list命令,但它说没有找到迁移。另外,如果我尝试应用迁移,它看起来不像创建生成的迁移代码中的表 - 它确实会创建数据库。列出迁移显示找不到迁移,为什么?

任何想法?

+0

所以你得到一个空的数据库,没有表?尚未使用ef7;它是否还有dbo .__ migrationhistory表,如果有,它是什么? –

+0

对,我得到一个空的数据库,没有表格。它具有迁移历史记录表,但该表没有行。 – Ryan

回答

3

以防万一链接消失。 Ryan链接到的github问题说在UseSqlServer调用之后添加.MigrationsAssembly(“[project]”)。像这样的东西。

services.AddEntityFramework() 
.AddSqlServer() 
.AddDbContext<ExampleContext>(options => 
    options.UseSqlServer(Configuration["Data:DefaultConnection:ConnectionString"]). 
    MigrationsAssembly("Example.Api")); 

还是现在甚至更好,你可以使用--targetProject每

https://github.com/aspnet/EntityFramework/wiki/Design-Meeting-Notes-(October-28,-2015)

cd src\MyApp 
dnx ef migrations add MyMigration --targetProject MyApp.Data 

这将迁移添加到TragetProject其中的DbContext住