ObjectContext.TryGetObjectByKey(EntityKey, Object) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
지정된 엔터티 키가 있는 개체를 반환합니다.
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
가 임시 키이거나 연결이 false
이거나 value
가 null
이면 null
입니다.
예외
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 찾을 수 없을 때 에서 발생한 GetObjectByKey 을 ObjectNotFoundException 처리하지 않도록 하려면 메서드를 사용합니다.
이 메서드는 상태의 개체를 반환합니다 Deleted .
임시 키를 사용하여 데이터 원본에서 개체를 반환할 수 없습니다.
메서드는 TryGetObjectByKey 메서드에 대한 GetObjectByKey 표준 .NET TryParse
패턴을 적용하고 가 catch되면 를 반환합니다 ObjectNotFoundExceptionfalse
.
적용 대상
추가 정보
.NET