ObjectContext.GetObjectByKey(EntityKey) Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Devolve um objeto que tem a chave de entidade 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
A chave do objeto a encontrar.
Devoluções
E Object isso é uma instância de um tipo de entidade.
Exceções
O key parâmetro é null.
O objeto não se encontra nem na ObjectStateManager fonte de dados.
Exemplos
Este exemplo cria um EntityKey para uma entidade do tipo dado e depois obtém uma entidade por chave.
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());
}
}
Observações
GetObjectByKey tenta recuperar um objeto que tenha o especificado EntityKey a partir do ObjectStateManager. Se o objeto não estiver atualmente carregado no contexto do objeto, é executada uma consulta numa tentativa de devolver o objeto da fonte de dados. Para obter mais informações, consulte Consultas de Objetos.
GetObjectByKey levanta um ObjectNotFoundException quando o objeto não pode ser encontrado. Para evitar lidar com esta exceção, use antes o TryGetObjectByKey método.
Este método devolverá objetos no Deleted estado.
Uma chave temporária não pode ser usada para devolver um objeto da fonte de dados.