Dot Net Entity Framework数据库更新不会在mysql数据库中创建表

我正在使用MySql作为官方连接提供程序的数据库。 我正在尝试使用mac上的下一个项目示例(asp.net core 1.0):

 public class BloggingContext : DbContext { public BloggingContext(DbContextOptions options) : base(options) { } public DbSet Blogs { get; set; } public DbSet Posts { get; set; } } public class Blog { public int BlogId { get; set; } public string Url { get; set; } public List Posts { get; set; } } public class Post { public int PostId { get; set; } public string Title { get; set; } public string Content { get; set; } public int BlogId { get; set; } public Blog Blog { get; set; } } 

在我的Startup.cs中

  public void ConfigureServices(IServiceCollection services) { var connection = @"server=localhost;userid=efcore;port=3306;database=blogsFinal;sslmode=none;"; services.AddDbContext(options => options.UseMySQL(connection)); // Add framework services. services.AddMvc(); } 

在我的project.json中我也添加了

 "dependencies": { ... "MySql.Data.EntityFrameworkCore": "7.0.5-ir21", "Microsoft.EntityFrameworkCore.Tools": { "version": "1.0.0-preview2-final", "type": "build" } } 

  "tools": { ..., "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final" }, 

当我运行dotnet ef migrations add v1 ,工作正常并创建迁移文件,但是当我执行dotnet ef database update ,数据库被创建但是表没有并抛出此输出

 System.NotImplementedException: The method or operation is not implemented. at MySQL.Data.EntityFrameworkCore.Migrations.Internal.MySQLHistoryRepository.get_ExistsSql() at Microsoft.EntityFrameworkCore.Migrations.HistoryRepository.Exists() at Microsoft.EntityFrameworkCore.Migrations.HistoryRepository.GetAppliedMigrations() at Microsoft.EntityFrameworkCore.Migrations.Internal.Migrator.Migrate(String targetMigration) at Microsoft.EntityFrameworkCore.Design.MigrationsOperations.UpdateDatabase(String targetMigration, String contextType) at Microsoft.EntityFrameworkCore.Tools.Cli.DatabaseUpdateCommand.c__DisplayClass0_0.b__0() at Microsoft.Extensions.CommandLineUtils.CommandLineApplication.Execute(String[] args) at Microsoft.EntityFrameworkCore.Tools.Cli.Program.Main(String[] args) The method or operation is not implemented. 

例外说它。 Oracle的官方MySQL提供程序尚不支持它的迁移或脚手架。

它只会在首次执行context.Database.EnsureCreated()创建数据库。 之后所做的任何更改都不会被应用。 您必须删除整个数据库并创建一个新数据库,丢失所有数据。

谢谢Oracle;)

更新

随着7.0.6-IR31 软件包的发布,迁移确实有效,但脚手架仍然没有。

正如Tseng所说,这是一个众所周知的问题。 这是2016年9月14日的错误报告。

缺少运行EntityFramework核心代码的实现首次迁移

http://bugs.mysql.com/bug.php?id=82981