Maison > développement back-end > C++ > Comment récupérer un identifiant généré par la base de données après avoir inséré une entité dans Entity Framework ?

Comment récupérer un identifiant généré par la base de données après avoir inséré une entité dans Entity Framework ?

Mary-Kate Olsen
Libérer: 2025-01-21 11:11:09
original
607 Les gens l'ont consulté

How Do I Retrieve a Database-Generated ID After Inserting an Entity in Entity Framework?

Récupérer l'ID généré par la base de données dans Entity Framework

Lors de l'insertion d'objets dans une base de données à l'aide d'Entity Framework (EF), il est souvent nécessaire d'obtenir l'ID généré par la base de données de l'entité nouvellement insérée. EF offre un moyen pratique d'y parvenir :

<code class="language-csharp">using (var context = new MyContext())
{
  context.MyEntities.Add(myNewObject);
  context.SaveChanges();

  int id = myNewObject.Id; // ID 现在可用
}</code>
Copier après la connexion

Lors de l'utilisation d'ID générés automatiquement (tels que IDENTITY dans MS SQL), EF exécute automatiquement une requête SELECT SCOPE_IDENTITY() après chaque instruction INSERT. Cela garantit que la propriété ID de l'objet inséré est correctement renseignée avec la valeur attribuée à la base de données.

Cependant, il est important de noter que cette méthode ne fonctionne qu'avec les identifiants générés par la base de données. Si vous utilisez un ID généré personnalisé (tel qu'un GUID), vous devez définir manuellement la propriété ID avant d'ajouter l'objet au contexte :

<code class="language-csharp">myNewObject.Id = Guid.NewGuid();
context.MyEntities.Add(myNewObject);
context.SaveChanges();</code>
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal