ObjectContext.GetObjectByKey(EntityKey) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Devuelve un objeto que tiene la clave de entidad especificada.
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
Parámetros
- key
- EntityKey
Clave del objeto que se va a encontrar.
Devoluciones
que Object es una instancia de un tipo de entidad.
Excepciones
El key parámetro es null.
El objeto no se encuentra en el ObjectStateManager origen de datos o .
Ejemplos
En este ejemplo se crea un EntityKey para una entidad del tipo especificado y, a continuación, se captura una entidad por clave.
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());
}
}
Comentarios
GetObjectByKeyintenta recuperar un objeto que tiene especificado EntityKey de .ObjectStateManager Si el objeto no se carga actualmente en el contexto del objeto, se ejecuta una consulta en un intento de devolver el objeto desde el origen de datos.
GetObjectByKey genera una ObjectNotFoundException excepción cuando no se encuentra el objeto . Para evitar el control de esta excepción, use el TryGetObjectByKey método .
Este método devolverá objetos en el Deleted estado .
No se puede usar una clave temporal para devolver un objeto del origen de datos.