ObjectContext.TryGetObjectByKey(EntityKey, Object) Metódus

Definíció

A megadott entitáskulcsot tartalmazó objektumot ad vissza.

public:
 bool TryGetObjectByKey(System::Data::EntityKey ^ key, [Runtime::InteropServices::Out] System::Object ^ % value);
public bool TryGetObjectByKey(System.Data.EntityKey key, out object value);
member this.TryGetObjectByKey : System.Data.EntityKey * obj -> bool
Public Function TryGetObjectByKey (key As EntityKey, ByRef value As Object) As Boolean

Paraméterek

key
EntityKey

A megtalálandó objektum kulcsa.

value
Object

Amikor ez a metódus visszatér, az objektumot tartalmazza.

Válaszok

true ha az objektum lekérése sikeresen megtörtént. falseha a key kapcsolat ideiglenes, a kapcsolat nullvagy az value .null

Kivételek

Nem kompatibilis metaadatok a következőhöz key: .

key az null.

Példák

Ez a példa létrehoz egy EntityKey adott típusú entitást, majd megpróbál lekérni egy entitást kulcs alapján.

using (AdventureWorksEntities context =
    new AdventureWorksEntities())
{
    Object entity = null;
    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.
    if (context.TryGetObjectByKey(key, out entity))
    {
        Console.WriteLine("The requested " + entity.GetType().FullName +
            " object was found");
    }
    else
    {
        Console.WriteLine("An object with this key " +
            "could not be found.");
    }
}

Megjegyzések

TryGetObjectByKey megpróbál lekérni egy objektumot, amely a megadott EntityKey a ObjectStateManager. Ha az objektum jelenleg nincs betöltve az objektumkörnyezetbe, a rendszer lekérdezést hajt végre, hogy megpróbálja visszaadni az objektumot az adatforrásból. További információ: Objektum-lekérdezések.

Ezzel a TryGetObjectByKey módszerrel elkerülheti, hogy az ObjectNotFoundExceptionGetObjectByKey objektum nem található.

Ez a metódus az állapotban lévő Deleted objektumokat adja vissza.

Ideiglenes kulcs nem használható objektum adatforrásból való visszaadására.

A TryGetObjectByKey metódus a TryParse metódus standard .NET GetObjectByKey mintáját alkalmazza, és false a ObjectNotFoundException elfogásakor adja vissza.

A következőre érvényes:

Lásd még