我在EntityFramework Core 2.0中遇到了迁移系统的问题,它似乎只是第一次使用数据库......:
当我使用命令时:add-migration InitialMigration
生成迁移代码,一切正常。但是,如果我使用database-update
,则没有任何反应......
如果我使用随机名称更改连接字符串中的数据库名称(仅为示例添加123),则命令database-update
将在此新数据库中运行并执行迁移...
如果我尝试进行其他迁移,则会出现同样的问题。没有任何反应,我必须再次更改数据库名称才能生成迁移代码。
DbContext:
public class TestProjectDbContext : DbContext
{
public TestProjectDbContext(DbContextOptions<TestProjectDbContext> options) : base(options)
{
}
public DbSet<User> User { get; set; }
}
用户类(命名空间TestProject.Data.Models)
public class User
{
public int Id { get; set; }
public string LastName { get; set; }
public string FirstName { get; set; }
public string Login { get; set; }
public string Email { get; set; }
public DateTime Created { get; set; }
}
连接字符串格式(appsettings.json)
{
"ConnectionStrings": {
"DefaultConnection": "Server=IPADRESS;Database=TestProject;User Id=xxxxxx; Password=xxxxxx;MultipleActiveResultSets=True"
},
任何想法..?谢谢:))
答案 0 :(得分:0)
经过第二次观察,我相信你正在运行&#34;数据库更新&#34;而不是&#34;更新 - 数据库&#34;
您的代码适用于我,如下所示。
我只是抓住你的代码并自己测试它,注意Startup.cs中的服务初始化:
var connection = @"Server=(localdb)\myhost;Database=myTestDb;Trusted_Connection=True;";
services.AddDbContext<aDbContext>(options => options.UseSqlServer(connection));