5
  • Ho creato una vista SQL che unisce alcune tabelle e quando viene testata in SQL Manager fornisce i dati corretti (Se una differenza è una unione complessa).
  • In MVC ho creato un modello di dati di entità (prima i dati) e poi aggiunto la generazione di codice .
  • Ho una query LINQ in un controller che genera una pagina idex.

Tutto roba base MVC.Entity Framework Risultati query Duplicato

Quando si esegue l'applicazione, ricevo record duplicati. Per qualificarsi ulteriormente, se un ordine ha più di una riga, restituisce il primo record per ogni riga nell '"ordine".

SQL Results 
Order, Line, Part 
12345, 1, 3829138120 
12345, 2, 1238401890 

MVC/EF Results 
Order, Line 
12345, 1, 3829138120 
12345, 1, 3829138120 

Qualche idea sulla causa di questo problema?

+0

Forse post alcuni segmenti di codice ridimensionati? In particolare la query LINQ. – Kit

risposta

5

È necessario ricontrollare gli attributi della chiave di entità. Vedo il risultato della tua query e dovresti contrassegnare come chiave primaria Ordine e Linea e penso che tu abbia dimenticato la sequenza di ordini come chiave.

+3

Grazie per l'intuizione, danihp. ** Risoluzione **: per risolvere il problema, ho aperto il modello dati Entity (file edmx) e selezionato la proprietà Field _ (OrderLine) _ in Entity Set * (SalesOrders) *. Aperte le Proprietà per il campo e impostare il valore della Chiave Entità su true. (Ho anche trovato molti campi che sono stati impostati come chiavi di entità che probabilmente non dovrebbero essere.) – Pete

+0

Ciao Pete, un lieto fine ... o iniziare. Buona fortuna per il tuo progetto e grazie per aver spiegato una risoluzione dettagliata. – danihp