ObjectContext.GetObjectByKey(EntityKey) Méthode

Définition

Retourne un objet qui a la clé d'entité spécifiée.

public:
 System::Object ^ GetObjectByKey(System::Data::EntityKey ^ key);
public object GetObjectByKey (System.Data.EntityKey key);
member this.GetObjectByKey : System.Data.EntityKey -> obj
Public Function GetObjectByKey (key As EntityKey) As Object

Paramètres

key
EntityKey

Clé de l'objet à rechercher.

Retours

Objet Object qui correspond à une instance d'un type d'entité.

Exceptions

Le paramètre key a la valeur null.

L'objet est introuvable dans l'objet ObjectStateManager ou dans la source de données.

Exemples

Cet exemple crée un EntityKey pour une entité du type donné, puis extrait une entité par clé.

using (AdventureWorksEntities context =
    new AdventureWorksEntities())
{
    try
    {
        // Define the entity key values.
        IEnumerable<KeyValuePair<string, object>> entityKeyValues =
            new KeyValuePair<string, object>[] {
            new KeyValuePair<string, object>("SalesOrderID", 43680) };

        // Create the  key for a specific SalesOrderHeader object.
        EntityKey key = new EntityKey("AdventureWorksEntities.SalesOrderHeaders", entityKeyValues);

        // Get the object from the context or the persisted store by its key.
        SalesOrderHeader order =
            (SalesOrderHeader)context.GetObjectByKey(key);

        Console.WriteLine("SalesOrderID: {0} Order Number: {1}",
            order.SalesOrderID, order.SalesOrderNumber);
    }
    catch (ObjectNotFoundException ex)
    {
        Console.WriteLine(ex.ToString());
    }
}

Remarques

GetObjectByKey essaie de récupérer un objet qui a l'objet EntityKey spécifié à partir de l'objet ObjectStateManager. Si l'objet n'est pas chargé actuellement dans le contexte de l'objet, une requête est exécutée en vue de retourner l'objet à partir de la source de données. Pour plus d’informations, consultez Requêtes d’objet.

GetObjectByKey lève une exception ObjectNotFoundException lorsque l'objet est introuvable. Pour éviter de gérer cette exception, utilisez plutôt la méthode TryGetObjectByKey.

Cette méthode retourne des objets à l'état Deleted.

Une clé temporaire ne peut pas être utilisée pour retourner un objet à partir de la source de données.

S’applique à

Voir aussi