Mysql
 sql >> Database >  >> RDS >> Mysql

Errore ASP.NET/Identity:il tipo di entità ApplicationUser non fa parte del modello per il contesto corrente

(INELEGANTE?) SOLUZIONE:

Ho visto questo eccellente video https://www.youtube.com/watch?v=elfqejow5hM di Alexander Schmidt e alle 33:00 l'autore rivela che la stringa di connessione non dovrebbe essere una stringa di connessione EF (utilizzando il provider EF) ma dovrebbe essere una stringa di connessione MYSQL/SQLServer vanilla specificatamente impostata per la sicurezza, ovvero:

<add name="IMSSecurityEntities" connectionString="data source=localhost;database=mydb;Uid=id;Pwd=password;" providerName="mysql.data.mysqlclient"/>

e allo stesso modo il modello di identità dovrebbe essere adattato a:

Public Class ApplicationDbContext
    Inherits IdentityDbContext(Of ApplicationUser)
    Public Sub New()
        MyBase.New("IMSSecurityEntities")
    End Sub

Questo mi rende nervoso per l'accesso alle entità di sicurezza tramite l'ORM, ma suppongo che potrebbe essere in base alla progettazione, quindi forse nessuna perdita.