다음을 통해 공유


ExecuteCrmOrganizationRequest 메서드와 함께 메시지(요청 및 응답 클래스) 사용

 

게시 날짜: 2016년 11월

적용 대상: Dynamics CRM 2015

IOrganizationService.Execute 메서드를 사용하는 것 외에 CrmServiceClient.ExecuteCrmOrganizationRequest 메서드를 사용하여 xRM 및 Dynamics 365 메시지를 실행할 수 있습니다.Execute 메서드와 유사하게 ExecuteCrmOrganizationRequest 메서드는 메시지 요청 클래스를 매개 변수로 사용하여 메시지 응답 클래스를 반환합니다.CrmServiceClient.ExecuteCrmOrganizationRequest 메서드를 사용하여 실행할 수 있는 메시지 목록은 조직 서비스의 xRM 메시지조직 서비스의 CRM 메시지를 참조하십시오.

다음 코드 샘플은 ExecuteCrmOrganizationRequest 메서드를 사용하여 메시지를 실행할 수 있는 방법을 보여 줍니다.

예제 1: CreateRequest 메시지

다음 코드 샘플은 CrmServiceClient.ExecuteCrmOrganizationRequest 메서드를 사용하여 CreateRequest 메시지를 실행하는 방법을 보여 줍니다. 이 예제에서는 거래처를 만든 후 응답 개체에 ID를 표시합니다.

CrmServiceClient crmSvc = new CrmServiceClient(new System.Net.NetworkCredential("<UserName>", "<Password>", "<Domain>"),"<Server>", "<Port>", "<OrgName>");

// Verify that you are connected.
if (crmSvc != null && crmSvc.IsReady)
{
    //Display the CRM version number and org name that you are connected to.
    Console.WriteLine("Connected to CRM! (Version: {0}; Org: {1}", 
    crmSvc.ConnectedOrgVersion, crmSvc.ConnectedOrgUniqueName);

    CreateRequest request = new CreateRequest();
    Entity newAccount = new Entity("account");
    newAccount.Attributes.Add("name", "Sample Test Account");
    request.Target = newAccount;
    CreateResponse response = (CreateResponse)crmSvc.ExecuteCrmOrganizationRequest(request);

    // Display the ID of the newly created account record.
    Console.WriteLine("Account record created with the following ID: {0}", response.id.ToString());
}
else
{
    // Display the last error.
    Console.WriteLine("An error occurred: {0}", crmSvc.LastCrmError);

    // Display the last exception message if any.
    Console.WriteLine(crmSvc.LastCrmException.Message);
    Console.WriteLine(crmSvc.LastCrmException.Source);
    Console.WriteLine(crmSvc.LastCrmException.StackTrace);

    return;
}

예제 2: RetrieveMultipleRequest

다음 코드 샘플에서는 CrmServiceClient.ExecuteCrmOrganizationRequest 메서드를 사용하여 RetrieveMultipleRequest 메시지를 실행하는 방법을 보여 줍니다. 이 예제에서는 시스템의 모든 연락처를 반입하기 위해 여러 요청 검색을 실행하고 전체 이름을 표시합니다.

CrmServiceClient crmSvc = new CrmServiceClient(new System.Net.NetworkCredential("<UserName>", "<Password>", "<Domain>"),"<Server>", "<Port>", "<OrgName>");

// Verify that you are connected.
if (crmSvc != null && crmSvc.IsReady)
{
    //Display the CRM version number and org name that you are connected to.
    Console.WriteLine("Connected to CRM! (Version: {0}; Org: {1}", 
    crmSvc.ConnectedOrgVersion, crmSvc.ConnectedOrgUniqueName);

    QueryExpression userSettingsQuery = new QueryExpression("contact");
    userSettingsQuery.ColumnSet.AllColumns = true;
    var retrieveRequest = new RetrieveMultipleRequest()
    {
        Query = userSettingsQuery
    };
    EntityCollection EntCol = (crmSvc.ExecuteCrmOrganizationRequest(retrieveRequest) as RetrieveMultipleResponse).EntityCollection;
    foreach (var a in EntCol.Entities)
    {
        Console.WriteLine("Account name: {0} {1}", a.Attributes["firstname"], a.Attributes["lastname"]);
    }
}
else
{
    // Display the last error.
    Console.WriteLine("An error occurred: {0}", crmSvc.LastCrmError);

    // Display the last exception message if any.
    Console.WriteLine(crmSvc.LastCrmException.Message);
    Console.WriteLine(crmSvc.LastCrmException.Source);
    Console.WriteLine(crmSvc.LastCrmException.StackTrace);

    return;
}

참고 항목

Execute 메서드와 함께 메시지(요청 및 응답 클래스) 사용
XRM 도구를 사용하여 CRM에 연결
XRM 도구를 사용하여 CRM에서 작업 실행

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