Ciao Moreno,
ancora grazie...ok sono andato avanti grazie alle tue indicazioni e al libro :)
Vorrei condividere quello che ho impostato fino ad ora:
1) - Dentro il metodo "ConfigureServices" del file "Startup.cs" ho aggiunto due DbContext, uno da utilizzare per mappare le classi con le varie tabelle del DB ed uno ad uso esclusivo delle tabelle del DB che dovranno gestire i dati degli utenti:
services.AddDbContext<BOMCoreContext>(options => options.UseMySql(Configuration.GetConnectionString("DefaultConnection")));
services.AddDbContext<BOMUserContext>(options => options.UseMySql(Configuration.GetConnectionString("DefaultConnection")));
services.AddDefaultIdentity<Utenti>().AddEntityFrameworkStores<BOMUserContext>();
Poi ho creato una classe nel mio progetto per estendere quella base di "IdentityUser":
public class Utenti : IdentityUser
{
.....
}
Ho creato la classe "ApplicationDBContext" che ho fatto derivare da "IdentityDbContext" nel modo seguente:
public class ApplicationDBContext : IdentityDbContext<Utenti>
{
public ApplicationDBContext(DbContextOptions<ApplicationDBContext> o) : base(o) { }
public DbSet<Utenti> Utenti { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder o)
{
}
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Entity<Utenti>().ToTable("wn_utenti");
modelBuilder.Entity<Utenti>(entity =>
{
entity.HasKey(e => e.UT_ID);
entity.Property(e => e.UT_ID).HasColumnType("varchar(255)").HasColumnName("UT_ID");
entity.Property(e => e.UT_Nome).HasColumnType("varchar(255)").HasColumnName("UT_Nome");
entity.Property(e => e.UT_Cognome).HasColumnType("varchar(255)").HasColumnName("UT_Cognome");
entity.Property(e => e.UT_Email).HasColumnType("varchar(255)").HasColumnName("UT_Email");
});
}
}
Poi tramite i comandi che mi hai indicato ho effettuato la migrazione nel DB MySql ed è andato tutto a buon fine.
Scusami per il tempo che ti ho fatto perdere e spero di poterti disturbare nuovamente in caso di bisogno.
Grazie :)