Esiste un modo semplice per recuperare una chiave primaria generata automaticamente dal DB quando si aggiunge un record tramite Entity Framework 4.1?Ottieni la chiave di identità automatica dopo l'inserimento tramite EF
Ad esempio:
dbcontext.Entity_Tables.Add(new Entity_Table { item1 = val1, item2 = val2 });
dbcontext.SaveChanges();
newPK = ???;
L'equivalente SQL sarebbe:
newPK = executeOnDB("INSERT INTO Entity_Table (item1, item2) VALUES (val1, val2);SELECT @@Indentity";);
BTW sto usando MySQL, ma lo SQL sarebbe la stessa del MSSQL
Voglio solo sottolineare che 'SELECT @@ Identity' NON è un buon modo per ottenere l'ultimo ID inserito. Dovresti usare 'SCOPE_IDENTITY()' – Icarus
Grazie Icarus. Non l'ho mai capito. Suppongo che dovrei aggiornare anche alcune delle mie vecchie app! – chrisg229
Possibile duplicato di [Come posso ottenere l'Id dell'entità inserita nel framework Entity?] (Http://stackoverflow.com/questions/5212751/how-can-i-get-id-of-inserted-entity-in-entity -framework) –