Code-First Add-Migration continues to add the same column

My model contains, among other things, two properties that were added to the model class after its initial creation and migration.

public sealed class SomeModel
{
    ... other properties, which are fine.        
    public int PropertyOne { get; set; }
    public int PropertyTwo { get; set; }
}

My last migration contains:

public override void Up()
{
    ... other table being created.
    AddColumn("dbo.SomeModel", "PropertyOne", c => c.Int(nullable: false));
    AddColumn("dbo.SomeModel", "PropertyTwo", c => c.Int(nullable: false));
}

The target database contains columns PropertyOneand PropertyTwo, and the table __MigrationHistorycontains entries for the migration that created the table and the migration that added the columns.

When I run Add-Migrationto get some other changes, it also includes these two properties again:

public override void Up()
{
    ... other changes.
    AddColumn("dbo.SomeModel", "PropertyOne", c => c.Int(nullable: false));
    AddColumn("dbo.SomeModel", "PropertyTwo", c => c.Int(nullable: false));
}

What could be the reason for this? I also notice that if I revert all model changes and try Update-Database(which should not do anything), I get an error:

, . . DbMigrationsConfiguration.AutomaticMigrationsEnabled to true, .

?

+4
2

, .designer.cs, . ( IMigrationMetadata.Target ). , , :

  • .
  • Add-Migration, . ( IMigrationMetadata.Target.)
  • , , . ( IMigrationMetadata.Target .)
  • Update-Database, .

, Add-Migration Dummy, Up() Down().

, Add-Migration ; Add-Migration :

. , . , , , "Add-Migration" Dummy '.

, , , IMigrationMetadata.Target.

: Up() ; Add-Migration, .

+3
  • -
  • , .
  • Add-Migration YourMigrationName
  • ,
  • Update-Database

, -, , , , , . , Entity Framework , .

0

All Articles