I get the following error when I try to register a new user, using Identity 2.0 and the default MVC 5 application:
Invalid column name 'Email'.
Invalid column name 'EmailConfirmed'.
Invalid column name 'PhoneNumber'.
Invalid column name 'PhoneNumberConfirmed'.
Invalid column name 'TwoFactorEnabled'.
Invalid column name 'LockoutEndDateUtc'.
Invalid column name 'LockoutEnabled'.
Invalid column name 'AccessFailedCount'.
(repeats 2 more times, I have a total of 4 test users in AspNetUsers table.)
I have a small application I've just upgraded from MVC4/Identity 1.0 to MVC5/Identity 2.0, so I had the Identity 1.0 columns (UserName, PasswordHash, SecurityStamp, Discriminator) working.
- I'm was using a remotely hosted SQL2012 DB with the standard Identity 1.0 tables.
- I created a 'clean' project, registered a user and it ran fine on the localDB.
- I successfully ran 'add-migration initial' and 'update-database' on my remote database.
- I initially followed this official guide , and the code in step 5 wasn't being generated. I tried pasting it in by hand and ran "update-database -verbose" again. Seemed to complete successfully, but still get the error.
Appreciate any help!
migration and configuration.cs files
internal sealed class Configuration : DbMigrationsConfiguration<FactBanker.Models.ApplicationDbContext>
{
public Configuration()
{
AutomaticMigrationsEnabled = true;
}
protected override void Seed(FactBanker.Models.ApplicationDbContext context)
{
}
}
}
My V023 migration.cs file Both the Up() and Down() methods were empty.
public partial class V023 : DbMigration
{
public override void Up()
{
}
public override void Down()
{
}
}
You have to modify all the entities that have been updated in version 2.0, for example:
You also need to modify mappings of the entities that changed in the OnModelCreating method of your dbcontext, After this you can add your migration
Tried the solution proposed by user1502551 but it gave me issues and didn't include the Down() method. The problems I was having was that the indexes being altered didn't exist by default from Identity 1.0 and there were a couple of extra columns that 2.0/2.1 doesn't expect (namely First and Last Name fields). Full Up() and Down() here:
The reason is you've upgraded to Microsoft.AspNet.Identity.EntityFramework 2.0.0.0 and that changes the user context.
To fix either generate a new db (set a new connection string mdf file) or change the sql table.
I was having the same problem. I used this manual migration and I haven't run into any additional issues yet.
Taken from: http://adamstephensen.com/2014/05/02/upgrading-from-asp-net-identity-1-0-to-2-0/
I had the same problem. Based on what Dan Gershony said, I simply uninstalled the Microsoft.AspNet.Identity.EntityFramework 2.0.0.0 and install an older version like Microsoft.AspNet.Identity.EntityFramework -Version 1.0.0. This solved my problem.
Are you sure you got the correct User class in your Dbcontext? If you want to modify your User table you should inhert like this:
and don t put anything like:
in there since it will already happen in the base class.