Ho ristretto questo a qualche problema tra Code First e Database first EF, ma non sono sicuro di come risolverlo. Cercherò di essere il più chiaro possibile, ma onestamente mi manca un po 'di comprensione qui. Questo è Entity Framework 4.4
Ho ereditato un progetto in cui è stato utilizzato Entity Framework, ma molti dei file effettivi sono stati eliminati senza un vero modo per tornare indietro. Ho aggiunto di nuovo EF (Database first) e ho replicato una configurazione T4 su cui era stato costruito il progetto. Ha generato versioni di codice di tutti i modelli di database e un file di codice DBContext.
Se la mia stringa di connessione appare come una stringa di connessione .NET "normale", ricevo un errore su una colonna non valida. Il nome "ProcessState_ID" non esiste. ProcessState_ID non è affatto nel codice di base, non è nel file EDMX o altro. Questa sembra essere una conversione EF automatica nella query.
Quando faccio corrispondere la stringa di connessione al modello Entity Framework, funziona bene.
Ora, cercando di far corrispondere il codice precedente con Entity Framework, vorrei mantenere la stringa di connessione .NET "normale".
Quindi ho due domande qui: 1. Qual è un buon modo per passare da una normale stringa di connessione a una stringa di connessione EF nel codice? 2. C'è un'altra correzione qui che non vedo per fermare l'errore di nome di colonna non valido?
public virtual Person Person { get; }