Odkryłem, że możesz ponownie mapować nazwy tabel dla dostawcy tożsamości i członkostwa w asp.net, zastępując OnModelCreation metoda w IdentityModels .cs.
Oto rozwiązanie:
protected override void OnModelCreating(System.Data.Entity.DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Entity<ApplicationUser>().ToTable("aspnetusers");
modelBuilder.Entity<IdentityRole>().ToTable("aspnetroles");
modelBuilder.Entity<IdentityUserRole>().ToTable("aspnetuserroles");
modelBuilder.Entity<IdentityUserClaim>().ToTable("aspnetuserclaims");
modelBuilder.Entity<IdentityUserLogin>().ToTable("aspnetuserlogins");
}
Zauważasz, że jawnie ustawiasz wszystkie standardowe nazwy tabel członkostwa asp.net na małe litery, ponieważ mam je w mojej bazie danych, co było przyczyną problemu.
Teraz mogę łączyć się, uwierzytelniać i zarządzać członkostwem z mojej istniejącej aplikacji internetowej, która jest połączona z bazą danych MySQL opartą na Linuksie.
Mam nadzieję, że to pomoże.