asp.net CORE Migrations生成为空
问题描述:
我试图按照教程添加从IdentityDbContext
和IdentityUser
生成的迁移(第二个)。
当我运行dotnet ef migration add <NAME>
它被添加,但UP
和DOWN
是空的。asp.net CORE Migrations生成为空
我发现从EFMigrationHistory表中删除数据可以解决问题,但该表不包含有关该迁移的任何信息,仅在第一个已创建的信息上。我尝试删除所有.TMP文件,然后删除并重新创建迁移。
WorldUser:
namespace TheWorld.Models
{
public class WorldUser : IdentityUser
{
public DateTime FirstTrip { get; set; }
}
}
WorldContext:
namespace TheWorld.Models
{
public class WorldContext : IdentityDbContext<WorldUser>
{
private IConfigurationRoot _config;
public WorldContext(IConfigurationRoot config,DbContextOptions options) : base(options)
{
_config = config;
}
....
奇怪的是,它没有昨天的工作,今天上午我试图删除所有.tmp文件,在迁移,和通过CMD重新创建它,并且它生成了一个看起来正确的迁移,但是很愚蠢,我删除了它,因为它的名称不正确,并且因为重新创建了它而不再工作。
答
您的迁移文件夹应包含一个WorldContextModelSnapshot.cs
,该文件包含整个数据库的定义。如果模型已经在此文件中定义,它将不再出现在新的迁移中。
如果要再次生成迁移,请从该文件中删除模型并再次生成迁移。
呃......我认为这是我没有试过去看的唯一文件。我在ONLINE上也找不到任何东西,所以非常感谢!它似乎在工作。我会尽我所能接受。 – sagi