Comment récupérer l'Id d'une entité insérée avec Entity Framework ?
Comment récupérer l'Id d'une entité insérée avec Entity Framework ?
Comment récupérer l'Id d'une entité insérée avec Entity Framework ?
Re: Comment récupérer l'Id d'une entité insérée avec Entity Framework ?
C'est assez simple. Si vous utilisez des Id générés par la base de données (comme `IDENTITY` dans MS SQL), il vous suffit d'ajouter l'entité à `ObjectSet` et d'appeler `SaveChanges` sur l'`ObjectContext` associé. L'`Id` sera automatiquement rempli pour vous :
```
using (var context = new MyContext())
{
context.MyEntities.Add(myNewObject);
context.SaveChanges();
int id = myNewObject.Id; // Oui, c'est ici
}
```
Entity Framework suit par défaut chaque `INSERT` d'un `SELECT SCOPE_IDENTITY()` lorsque des `Id` générés automatiquement sont utilisés.
```
using (var context = new MyContext())
{
context.MyEntities.Add(myNewObject);
context.SaveChanges();
int id = myNewObject.Id; // Oui, c'est ici
}
```
Entity Framework suit par défaut chaque `INSERT` d'un `SELECT SCOPE_IDENTITY()` lorsque des `Id` générés automatiquement sont utilisés.