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 most recent 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 the PropertyOne and PropertyTwo columns, and the __MigrationHistory table contains entries for both the migration that created the table and the migration that added the columns.
When I run Add-Migration to get some other changes, it also includes those 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 causing this? I also notice that if I revert all of my model changes and try an Update-Database (which should do nothing), I get the error:
Unable to update database to match the current model because there are pending changes and automatic migration is disabled. Either write the pending model changes to a code-based migration or enable automatic migration. Set DbMigrationsConfiguration.AutomaticMigrationsEnabled to true to enable automatic migration.
What could be causing this?