Entity Framework 核心 2 - 代码优先不创建表
Entity Framework Core 2 - Code first not creating tables
Entity Framework Core 2.0 已经 recently released 我正在使用它
我在文件 Startup.cs 的方法 ConfigurationServices() 中添加了以下行(我的连接字符串没问题)。
services.AddDbContext<AutoPartsContext>(options =>
options.UseSqlServer(Configuration.GetConnectionString("NetCore")));
并在 Configure 方法中,
using (var serviceScope =
app.ApplicationServices.GetService<IServiceScopeFactory>().CreateScope())
{
var context =
serviceScope.ServiceProvider.GetRequiredService<MyConntectionStringName>();
context.Database.Migrate();
context.Database.EnsureCreated();
}
这是在创建数据库,而不是 table。当我对 table 进行简单计数时,
var a = _context.Users.Count();
它抛出以下异常
Invalid object name 'Users'.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
但是,如果我手动创建 table,一切都会完美无缺。我需要自动创建所有 table。
EF Core 版本:2.0,数据库提供程序:Microsoft.EntityFrameworkCore.SqlServer,操作系统:Windows 10,IDE:Visual Studio 2017 预览版 2
您需要为此使用迁移,因为以前存在于 Core EF 中的数据库初始化程序不再可用。
Entity Framework Core 2.0 已经 recently released 我正在使用它
我在文件 Startup.cs 的方法 ConfigurationServices() 中添加了以下行(我的连接字符串没问题)。
services.AddDbContext<AutoPartsContext>(options =>
options.UseSqlServer(Configuration.GetConnectionString("NetCore")));
并在 Configure 方法中,
using (var serviceScope =
app.ApplicationServices.GetService<IServiceScopeFactory>().CreateScope())
{
var context =
serviceScope.ServiceProvider.GetRequiredService<MyConntectionStringName>();
context.Database.Migrate();
context.Database.EnsureCreated();
}
这是在创建数据库,而不是 table。当我对 table 进行简单计数时,
var a = _context.Users.Count();
它抛出以下异常
Invalid object name 'Users'. at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
但是,如果我手动创建 table,一切都会完美无缺。我需要自动创建所有 table。
EF Core 版本:2.0,数据库提供程序:Microsoft.EntityFrameworkCore.SqlServer,操作系统:Windows 10,IDE:Visual Studio 2017 预览版 2
您需要为此使用迁移,因为以前存在于 Core EF 中的数据库初始化程序不再可用。