ObjectContext.GetObjectByKey(EntityKey) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt ein Objekt mit dem angegebenen Entitätsschlüssel zurück.
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
Parameter
- key
- EntityKey
Der Schlüssel des zu suchenden Objekts.
Gibt zurück
Ein Object, bei dem es sich um die Instanz eines Entitätstyps handelt.
Ausnahmen
Der key
-Parameter ist null
.
Das Objekt wurde weder im ObjectStateManager noch in der Datenquelle gefunden.
Beispiele
In diesem Beispiel wird ein EntityKey für eine Entität des angegebenen Typs erstellt und dann eine Entität nach Schlüssel abgerufen.
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());
}
}
Hinweise
GetObjectByKey versucht ein Objekt mit dem angegebenen EntityKey vom ObjectStateManager abzurufen. Wenn das Objekt derzeit nicht in den Objektkontext geladen wird, wird eine Abfrage ausgeführt, um das Objekt aus der Datenquelle zurückzugeben. Weitere Informationen finden Sie unter Objektabfragen.
GetObjectByKey löst eine ObjectNotFoundException aus, wenn das Objekt nicht gefunden wird. Um die Behandlung dieser Ausnahme zu vermeiden, können Sie stattdessen die TryGetObjectByKey-Methode verwenden.
Diese Methode gibt Objekte im Deleted-Status zurück.
Ein temporärer Schlüssel kann nicht verwendet werden, um ein Objekt aus der Datenquelle zurückzugeben.