ObjectContext.GetObjectByKey(EntityKey) Metoda

Definice

Vrátí objekt, který má zadaný klíč entity.

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

Parametry

key
EntityKey

Klíč objektu, který se má najít.

Návraty

Jedná Object se o instanci typu entity.

Výjimky

Parametr key je null.

Objekt není nalezen ve zdroji dat ani ve zdroji ObjectStateManager dat.

Příklady

Tento příklad vytvoří EntityKey entitu daného typu a pak načte entitu podle klíče.

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());
    }
}

Poznámky

GetObjectByKey se pokusí načíst objekt, který má zadaný EntityKey objekt z objektu ObjectStateManager. Pokud objekt není aktuálně načten do kontextu objektu, spustí se dotaz při pokusu o vrácení objektu ze zdroje dat. Další informace najdete v tématu Dotazy na objekty.

GetObjectByKey vyvolá objekt, ObjectNotFoundException když objekt nelze najít. Pokud se chcete vyhnout zpracování této výjimky, použijte místo toho metodu TryGetObjectByKey .

Tato metoda vrátí objekty ve Deleted stavu.

Dočasný klíč nelze použít k vrácení objektu ze zdroje dat.

Platí pro

Viz také