다음을 통해 공유


대체 키를 사용하여 레코드 만들기

 

게시 날짜: 2016년 11월

적용 대상: Dynamics CRM 2015

이제 EntityEntityReference 클래스의 인스턴스를 만드는 데 대체 키를 사용할 수 있습니다. 이 항목에서는 대체 키를 사용할 때 throw될 수 있는 사용 패턴과 가능한 예외를 설명합니다. 엔터티에 대한 대체 키를 정의하는 방법을 이해하려면 엔터티에 대한 대체 키 정의를 참조하십시오.

참고

Microsoft Dynamics CRM Online 조직의 경우 이 기능은 조직이 Dynamics CRM Online 2015 업데이트 1로 업데이트된 경우에만 사용할 수 있습니다. 이 기능은 Dynamics CRM(온-프레미스)에서는 사용할 수 없습니다.

이 항목의 내용

대체 키를 사용하여 엔터티 만들기

대체 키를 사용하여 EntityReference 만들기

메시지에 대한 대체 입력

대체 키를 사용할 때의 예외

대체 키를 사용하여 엔터티 만들기

이제 새로운 생성자를 사용하여 한 번 호출로 기본 ID 또는 단일 KeyAttribute를 사용하여 Entity 를 만들 수 있습니다.

public Entity (string logicalName, Guid id) {…}  
public Entity (string logicalName, string keyName, object keyValue) {…}
public Entity (string logicalName, KeyAttributeCollection keyAttributes) {…}  

업데이트 작업에 사용되는 유효한 Entity는 엔터티의 논리적 이름과 다음 중 하나를 포함합니다.

  • ID 값(기본 키 GUID 값) (또는)

  • 엔터티에 대해 정의된 키와 일치하는 특성의 유효한 집합을 갖는 KeyAttributeCollection.

대체 키를 사용하여 EntityReference 만들기

또한 새로운 생성자를 사용하여 한 번 호출로 기본 ID를 사용하지 않고 단일 KeyAttribute를 사용하여 EntityReference를 만들 수 있습니다.

public EntityReference(string logicalName, Guid id) {…}  
public EntityReference(string logicalName, string keyName, object keyValue) {…}  
public EntityReference(string logicalName, KeyAttributeCollection keyAttributeCollection) {…}  

유효한 EntityReference는 엔터티의 논리적 이름과 다음 중 하나를 포함합니다.

  • ID 값(기본 키 GUID 값) 또는

  • 엔터티에 대해 정의된 키와 일치하는 특성의 유효한 집합을 갖는 KeyAttributeCollection 컬렉션.

메시지에 대한 대체 입력

엔터티를 CreateRequestUpdateRequest으로 전달하면 EntityReference을 사용하여 조회 특성을 위해 제공된 값이 이제 KeyAttributes에 정의된 대체 키와 함께 EntityReference을 사용하여 관련 레코드를 지정할 수 있습니다.  이것은 기본 ID 기반 엔터티 참조에 해소되고 대체된 후에 메시지가 처리됩니다.

대체 키를 사용할 때의 예외

대체 키를 사용하는 경우 다음과 같은 조건 및 예외를 인식해야 합니다.

  • 기본 ID는 제공되는 경우에 사용됩니다. 제공되지 않는 경우 KeyAttributeCollection를 검토합니다.KeyAttributeCollection가 제공되지 않는 경우 오류를 throw합니다.

  • 제공된 KeyAttributeCollection에 엔터티의 기본 키인 특성 하나가 포함되고 값이 유효한 경우 Entity 또는 EntityReference의 ID 속성을 제공된 값으로 채웁니다.

  • 키 특성이 제공된 경우 시스템은 Entity에 대해 정의된 키와 함께 제공된 특성 집합과 일치시키려고 시도합니다. 일치하는 항목이 없는 경우 오류를 throw합니다. 일치하는 항목이 있는 경우 이러한 특성에 대해 제공된 값의 유효성을 검사합니다. 유효한 경우 제공된 키 값과 일치한 레코드의 ID를 검색하고 Entity 또는 EntityReference의 ID 값을 이 값으로 채웁니다.

  • 고유한 키로 정의되지 않은 특성을 지정하는 경우 고유한 키 특성을 사용해야 함을 나타내는 오류가 throw됩니다.

참고 항목

엔터티에 대한 대체 키 정의
변경 내용 추적을 사용하여 데이터를 외부 시스템과 동기화
Upsert를 사용하여 레코드 삽입 또는 업데이트

© 2017 Microsoft. All rights reserved. 저작권 정보