QueryExpression 클래스 사용
게시 날짜: 2016년 11월
적용 대상: Dynamics CRM 2015
Microsoft Dynamics CRM 2015 및 Microsoft Dynamics CRM Online에서 QueryExpression 클래스를 사용하여 IOrganizationService.RetrieveMultiple 메서드 또는 RetrieveMultipleRequest 메시지에 사용할 복잡한 쿼리를 빌드할 수 있습니다.ConditionExpression, ColumnSet 및 FilterExpression 클래스를 사용하여 쿼리 매개 변수를 QueryExpression에 설정할 수 있습니다.
QueryExpression 클래스를 사용하면 복잡한 쿼리를 만들 수 있습니다.QueryByAttribute 클래스는 특성이 지정된 값과 일치하는 엔터티를 검색하는 단순한 방법으로 설계됩니다.
다음 표에는 쿼리 식을 만들기 위해 설정하는 속성이 나와 있습니다.
속성 |
설명 |
---|---|
검색할 엔터티 유형을 지정합니다. 쿼리 식은 한 가지 엔터티 유형의 컬렉션만 검색할 수 있습니다. |
|
검색할 특성(열)의 집합을 지정합니다. |
|
쿼리 결과를 필터링하는 복잡한 조건 및 논리 필터 식을 지정합니다. |
|
쿼리 결과에 중복 레코드가 있는지 여부를 지정합니다. |
|
여러 엔터티 유형 간의 링크를 지정합니다. |
|
쿼리에서 반환되는 레코드 순서를 지정합니다. |
|
쿼리에서 반환된 페이지 당 레코드 수 및 페이지 수를 지정합니다. |
레코드 수
쿼리에서 반환되는 레코드 수를 확인하려면 쿼리를 실행하기 전에 ReturnTotalRecordCount 속성을 true로 설정합니다. 이렇게 하면 TotalRecordCount가 설정됩니다. 그렇지 않으면 이 값이-1이 됩니다.
예제
다음 샘플에서는 QueryExpression 클래스를 사용하는 방법을 보여 줍니다.
// Query using ConditionExpression and FilterExpressionConditionExpression condition1 = new ConditionExpression();condition1.AttributeName = "lastname";condition1.Operator = ConditionOperator.Equal;condition1.Values.Add("Brown"); FilterExpression filter1 = new FilterExpression();filter1.Conditions.Add(condition1);QueryExpression query = new QueryExpression("contact");query.ColumnSet.AddColumns("firstname", "lastname");query.Criteria.AddFilter(filter1);EntityCollection result1 = _serviceProxy.RetrieveMultiple(query);Console.WriteLine();Console.WriteLine("Query using Query Expression with ConditionExpression and FilterExpression");Console.WriteLine("---------------------------------------");foreach (var a in result1.Entities){ Console.WriteLine("Name: " + a.Attributes["firstname"] + " " + a.Attributes["lastname"]);}Console.WriteLine("---------------------------------------");
참고 항목
QueryExpression
QueryExpression을 사용하여 쿼리 작성
ColumnSet 클래스 사용
ConditionExpression 클래스 사용
FilterExpression 클래스 사용
© 2017 Microsoft. All rights reserved. 저작권 정보