ObjectContext.CreateEntityKey(String, Object) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Crée la clé d'entité pour un objet spécifique ou retourne la clé d'entité si elle existe déjà.
public:
System::Data::EntityKey ^ CreateEntityKey(System::String ^ entitySetName, System::Object ^ entity);
public System.Data.EntityKey CreateEntityKey (string entitySetName, object entity);
member this.CreateEntityKey : string * obj -> System.Data.EntityKey
Public Function CreateEntityKey (entitySetName As String, entity As Object) As EntityKey
Paramètres
- entitySetName
- String
Nom complet du jeu d'entités auquel appartient l'objet entité.
- entity
- Object
Objet pour lequel la clé d'entité est récupérée.
Retours
EntityKey de l'objet.
Exceptions
Lorsque l'un ou l'autre paramètre est null
.
Lorsque entitySetName
est vide.
- ou -
Lorsque le type de l'objet entity
n'existe pas dans le jeu d'entités.
- ou -
Lorsque entitySetName
n'est pas totalement qualifié.
Lorsque la clé d'entité ne peut pas être construite correctement avec les paramètres fournis.
Exemples
Dans cet exemple, la méthode CreateEntityKey est utilisée pour récupérer la clé d'entité d'un objet existant.
private static void ApplyItemUpdates(SalesOrderDetail updatedItem)
{
// Define an ObjectStateEntry and EntityKey for the current object.
EntityKey key = default(EntityKey);
object originalItem = null;
using (AdventureWorksEntities context = new AdventureWorksEntities())
{
// Create the detached object's entity key.
key = context.CreateEntityKey("SalesOrderDetails", updatedItem);
// Get the original item based on the entity key from the context
// or from the database.
if (context.TryGetObjectByKey(key, out originalItem))
{
// Call the ApplyCurrentValues method to apply changes
// from the updated item to the original version.
context.ApplyCurrentValues(key.EntitySetName, updatedItem);
}
context.SaveChanges();
}
}
Remarques
S’il n’existe EntityKey pas de pour , entity
la CreateEntityKey méthode crée une clé pour celui-ci.
Cette méthode est utilisée pour déterminer si un objet ayant le même EntityKey est déjà attaché à l'objet ObjectContext. Si un objet ayant le même EntityKey est déjà attaché, une exception est levée. Utilisez la méthode CreateEntityKey pour tenter de récupérer l'objet EntityKey de l'objet détaché avant d'appeler la méthode Attach.