ObjectContext.TryGetObjectByKey(EntityKey, Object) Метод

Определение

Возвращает объект с указанным ключом сущности.

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

Параметры

key
EntityKey

Ключ найденного объекта.

value
Object

Когда этот метод возвращается, содержит объект.

Возвращаемое значение

true Значение , если объект был успешно получен. Значение , если это временно, соединение равно или равно.

Исключения

Несовместимые метаданные для key.

key равно null.

Примеры

В этом примере создается EntityKey сущность заданного типа, а затем пытается получить сущность по ключу.

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.");
    }
}

Комментарии

TryGetObjectByKey пытается получить объект, имеющий указанный EntityKey из объекта ObjectStateManager. Если объект в настоящее время не загружен в контекст объекта, запрос выполняется в попытке вернуть объект из источника данных.

TryGetObjectByKey Используйте метод, чтобы избежать обработки вызываемого ObjectNotFoundExceptionGetObjectByKey объекта, если объект не найден.

Этот метод вернет объекты в Deleted состоянии.

Временный ключ нельзя использовать для возврата объекта из источника данных.

Метод TryGetObjectByKey применяет стандартный шаблон .NET TryParse для метода GetObjectByKey, возвращая false при перехвате ObjectNotFoundException.

Применяется к

См. также раздел