ObjectContext.GetObjectByKey(EntityKey) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Restituisce un oggetto contenente la chiave di entità specificata.
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
Parametri
- key
- EntityKey
Chiave dell'oggetto da trovare.
Restituisce
Oggetto Object che rappresenta un'istanza di un tipo di entità.
Eccezioni
Il valore del parametro key
è null
.
L'oggetto non viene trovato nell'oggetto ObjectStateManager né nell'origine dati.
Esempio
In questo esempio viene creato un oggetto EntityKey per un'entità del tipo specificato e quindi recupera un'entità in base alla chiave.
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());
}
}
Commenti
GetObjectByKey tenta di recuperare un oggetto contenente l'oggetto EntityKey specificato da ObjectStateManager. Se l'oggetto non è attualmente caricato nel contesto dell'oggetto, viene eseguita una query nel tentativo di restituire l'oggetto dall'origine dati. Per altre informazioni, vedere Query sugli oggetti.
GetObjectByKey genera un'eccezione ObjectNotFoundException quando non è possibile trovare l'oggetto. Per evitare di gestire questa eccezione, utilizzare invece il metodo TryGetObjectByKey.
Questo metodo restituirà gli oggetti che si trovano nello stato Deleted.
Non è possibile utilizzare una chiave temporanea per restituire un oggetto dall'origine dati.