ObjectContext.TryGetObjectByKey(EntityKey, Object) 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 zurück, das den angegebenen Entitätsschlüssel aufweist.
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
Parameter
- key
- EntityKey
Der Schlüssel des zu findenden Objekts.
- value
- Object
Wenn diese Methode zurückgegeben wird, enthält sie das Objekt.
Gibt zurück
true wenn das Objekt erfolgreich abgerufen wurde.
falsewenn dies key temporär ist, ist nulldie Verbindung , oder dies ist null.value
Ausnahmen
Inkompatible Metadaten für key.
key ist null.
Beispiele
In diesem Beispiel wird eine EntityKey Entität des angegebenen Typs erstellt und anschließend versucht, eine Entität nach Schlüssel abzurufen.
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.");
}
}
Hinweise
TryGetObjectByKey versucht, ein Objekt abzurufen, das das angegebene EntityKey Objekt aus dem ObjectStateManager. Wenn das Objekt derzeit nicht in den Objektkontext geladen wird, wird eine Abfrage in einem Versuch ausgeführt, das Objekt aus der Datenquelle zurückzugeben.
Verwenden Sie die TryGetObjectByKey Methode, um die Behandlung des ObjectNotFoundException ausgelösten GetObjectByKey Objekts zu vermeiden, wenn das Objekt nicht gefunden werden kann.
Diese Methode gibt Objekte im Deleted Zustand zurück.
Ein temporärer Schlüssel kann nicht verwendet werden, um ein Objekt aus der Datenquelle zurückzugeben.
Die methode TryGetObjectByKey wendet das Standardmuster .NET TryParse für die methode GetObjectByKey an und gibt false zurück, wenn die ObjectNotFoundException abgefangen wird.