ObjectContext.GetObjectByKey(EntityKey) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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.