다음을 통해 공유


QueryExpression 클래스 사용

 

게시 날짜: 2017년 1월

적용 대상: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online

Microsoft Dynamics 365 및 Microsoft Dynamics 365(온라인)에서 QueryExpression 클래스를 사용하여 IOrganizationService.RetrieveMultiple 메서드 또는 RetrieveMultipleRequest 메시지에 사용할 복잡한 쿼리를 빌드할 수 있습니다.ConditionExpression, ColumnSetFilterExpression 클래스를 사용하여 쿼리 매개 변수를 QueryExpression에 설정할 수 있습니다.

QueryExpression 클래스를 사용하면 복잡한 쿼리를 만들 수 있습니다.QueryByAttribute 클래스는 특성이 지정된 값과 일치하는 엔터티를 검색하는 단순한 방법으로 설계됩니다.

다음 표에는 쿼리 식을 만들기 위해 설정하는 속성이 나와 있습니다.

속성

설명

EntityName

검색할 엔터티 유형을 지정합니다. 쿼리 식은 한 가지 엔터티 유형의 컬렉션만 검색할 수 있습니다.

ColumnSet

검색할 특성(열)의 집합을 지정합니다.

Criteria

쿼리 결과를 필터링하는 복잡한 조건 및 논리 필터 식을 지정합니다.

Distinct

쿼리 결과에 중복 레코드가 있는지 여부를 지정합니다.

LinkEntities

여러 엔터티 유형 간의 링크를 지정합니다.

Orders

쿼리에서 반환되는 레코드 순서를 지정합니다.

PageInfo

쿼리에서 반환된 페이지 당 레코드 수 및 페이지 수를 지정합니다.

레코드 수

쿼리에서 반환되는 레코드 수를 확인하려면 쿼리를 실행하기 전에 ReturnTotalRecordCount 속성을 true로 설정합니다. 이렇게 하면 TotalRecordCount가 설정됩니다. 그렇지 않으면 이 값이-1이 됩니다.

예제

다음 샘플에서는 QueryExpression 클래스를 사용하는 방법을 보여 줍니다.

//  Query using ConditionExpression and FilterExpression
ConditionExpression 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 클래스 사용

Microsoft Dynamics 365

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