다음을 통해 공유


클라이언트 응용 프로그램에서 XRM 도구의 공통 로그인 컨트롤 사용

 

게시 날짜: 2016년 11월

적용 대상: Dynamics CRM 2015

Microsoft Dynamics CRM SDK는 클라이언트 응용 프로그램에서 공통의 로그인 컨트롤을 사용할 수 있는 Microsoft Visual Studio에 대한 템플릿을 제공합니다.Dynamics 365 인증, 자격 증명 저장과 검색 및 진단 로깅용 코드는 템플릿에 기본 제공되므로 Dynamics 365용 Windows 클라이언트 응용 프로그램에서 이러한 기능을 신속하게 활용할 수 있습니다. 공통 로그인 컨트롤은 Microsoft.Xrm.Tooling.CrmConnectControl의 구현이며 컨트롤은 다음 이미지와 비슷합니다.

XRM 도구 공통 로그인 컨트롤

이 항목의 내용

필수 조건

공통 로그인 컨트롤 템플릿을 사용하여 WPF 응용 프로그램 만들기

기존 WPF 응용 프로그램에 공통 로그인 컨트롤 템플릿 추가

필수 조건

  • .NET Framework 4.5.2

  • Microsoft Visual Studio 2012 또는 Visual Studio 2013

  • Visual Studio 2012 또는 Visual Studio 2013용 Nuget 패키지 관리자

  • 공통 로그인 컨트롤 템플릿을 포함하는 Visual Studio용 Microsoft Dynamics CRM SDK 템플릿입니다. 다음 방법 중 하나로 얻을 수 있습니다.

    • Visual Studio 갤러리에서 Dynamics 365 SDK 템플릿을 다운로드하고 Visual Studio에서 템플릿을 설치할 CRMSDKTemplates.vsix 파일을 두 번 클릭합니다.

    • Dynamics 365 SDK 패키지를 다운로드하고 추출합니다. 템플릿 파일 CRMSDKTemplates.vsix은 SDK\Templates 폴더에 있습니다.CRMSDKTemplates.vsix 파일을 두 번 클릭하여 Visual Studio에 템플릿을 설치합니다.

공통 로그인 컨트롤 템플릿을 사용하여 WPF 응용 프로그램 만들기

다음은 공통 로그인 컨트롤과 인증을 위한 기본 코드, 자격 증명 저장소와 재사용 및 기본 추적이나 로깅을 활용하는 Windows Presentation Foundation(WPF) 응용 프로그램을 만드는 빠른 방법입니다.

  1. Microsoft Visual Studio를 시작하고 새 프로젝트를 만듭니다.

  2. 새 프로젝트 대화 상자에서:

    1. 설치된 템플릿 목록에서 Visual C# 을 확장하고 CRM SDK 템플릿을 선택합니다.

    2. .NET Framework 4.5.2이 선택되었는지 확인합니다.

    3. CRM용 WPF 응용 프로그램을 선택합니다.

    4. 프로젝트의 이름과 위치를 지정하고 확인을 클릭합니다.

    CRM 템플릿용 WPF 응용 프로그램

  3. 프로젝트를 테스트하려면

    1. 프로젝트를 저장하고 F5 키를 누르거나 디버그 > 디버깅 시작을 클릭하여 프로젝트가 성공적으로 컴파일되는지 확인합니다. 컴파일에 성공하면 CRM에 로그인 단추가 있는 MainWindow가 표시됩니다. 공통 로그인 컨트롤을 표시하려면 단추를 클릭합니다.

    2. Dynamics 365에 연결할 자격 증명을 제공하여 인증을 테스트한 다음 로그인을 클릭합니다. 메시지는 Dynamics 365 연결 상태를 표시합니다.

공통 로그인 컨트롤 템플릿을 사용하여 Dynamics 365에 연결하고 다양한 작업을 수행하는 템플릿의 경우 샘플: XRM 도구 API 빠른 시작을 참조하십시오.

참고

CRM용 WPF 응용 프로그램 템플릿은 Microsoft.Xrm.Tooling.Ui.Resources.dll 파일 대신 Microsoft.Xrm.Tooling.Ui.Styles.dll 파일을 사용하여 XAML 리소스를 공통 로그인 컨트롤에 제공합니다. Microsoft.Xrm.Tooling.Ui.Resources.dll 파일은 현재 릴리스에서 더 이상 사용되지 않으며 Microsoft.Xrm.Tooling.Ui.Styles.dll 파일은 Microsoft.Xrm.Tooling.Ui.Resources.dll과 동일한 기능을 제공합니다.

기존 WPF 응용 프로그램에 공통 로그인 컨트롤 템플릿 추가

이미 WPF 클라이언트 응용 프로그램이 있는 경우 Dynamics 365 인증, 자격 증명 저장소와 재사용 및 기본 추적이나 로깅을 위해 공통 로그인 컨트롤 템플릿을 손쉽게 추가하여 균일한 로그인 환경과 기본 코드를 활용할 수 있습니다. 이 경우 기존 클라이언트 응용 프로그램의 사용자 인터페이스에서 컨트롤을 만들어 공통 로그인 컨트롤을 호출하고 Dynamics 365 연결 개체의 인스턴스를 인스턴스화한 다음 연결 개체를 사용하여 Dynamics 365에서 다양한 작업을 수행해야 합니다.

  1. Visual Studio에서 기존 WPF 응용 프로그램 프로젝트를 엽니다. 이 예제에서는 WPF 응용 프로그램 프로젝트의 이름이 SampleWPFApp이라고 가정합시다.

  2. 프로젝트에 공통 로그인 컨트롤 템플릿 추가

    1. 솔루션 탐색기 창에서 프로젝트 이름을 마우스 오른쪽 단추로 클릭하고 추가 > 새 항목을 클릭합니다.

    2. 새 항목 추가 대화 상자의 설치된 템플릿 목록에서 Visual C# 을 확장하고 CRM SDK 템플릿을 선택합니다.WPF 응용 프로그램용 CRM 로그인 양식을 클릭하고 확인을 클릭합니다.

      일반 로그인 컨트롤 템플릿 추가

  3. 새로 추가된 CrmLoginForm1.xaml 로그인 컨트롤은 XAML 디자이너 영역에 표시됩니다. 그렇지 않은 경우 솔루션 탐색기 창에서 CrmLoginForm1.xaml 파일을 두 번 클릭합니다.

    로그인 컨트롤이 제대로 렌더링되는지 확인

  4. 이제 응용 프로그램에서 새로 추가한 로그인 컨트롤을 호출해야 합니다. 이렇게 하려면 MainWindow.xaml 파일에 단추 컨트롤을 추가하고 이름과 내용을 btnSignInCRM에 로그인으로 각각 설정합니다.

    로그인 양식을 호출할 컨트롤 추가

  5. 단추를 두 번 클릭하여 MainWindow.xaml.cs 파일에서 btnSignIn 단추의 클릭 이벤트에 대한 코드를 추가합니다.

  6. btnSignIn 단추의 클릭 이벤트에서 다음 샘플 코드를 추가하여 CrmLoginForm1 컨트롤을 호출하고 Dynamics 365 연결 개체의 인스턴스를 만듭니다.

    // Establish the Login control.
    CRMLoginForm1 ctrl = new CRMLoginForm1();
    
    // Wire event to login response. 
    ctrl.ConnectionToCrmCompleted += ctrl_ConnectionToCrmCompleted;
    
    // Show the login control. 
    ctrl.ShowDialog();
    
    // Handle the returned CRM connection object.
    // On successful connection, display the CRM version and connected org name 
    if (ctrl.CrmConnectionMgr != null && ctrl.CrmConnectionMgr.CrmSvc != null && ctrl.CrmConnectionMgr.CrmSvc.IsReady)
    {
        MessageBox.Show("Connected to CRM! Version: " + ctrl.CrmConnectionMgr.CrmSvc.ConnectedOrgVersion.ToString() + 
        " Org: " + ctrl.CrmConnectionMgr.CrmSvc.ConnectedOrgUniqueName, "Connection Status");
    
        // Perform your actions here
    }
    else
    {
        MessageBox.Show("Cannot connect; try again!", "Connection Status");
    }
    
  7. 단추의 클릭 이벤트 아래에 ctrl_ConnectionToCrmCompleted 이벤트의 정의를 추가합니다.

    private void ctrl_ConnectionToCrmCompleted(object sender, EventArgs e)
    {
        if (sender is CRMLoginForm1)
        {
            this.Dispatcher.Invoke(() =>
            {
                ((CRMLoginForm1)sender).Close();
            });
        }
    }
    
  8. 이는 이전 두 단계에서 코드를 추가한 후 MainWindow.xaml.cs 파일이 어떻게 나타나는지 보여 줍니다.

    샘플 코드

  9. 프로젝트를 테스트하려면

    1. 프로젝트를 저장하고 F5 키를 누르거나 디버그 > 디버깅 시작을 클릭하여 프로젝트가 성공적으로 컴파일되는지 확인합니다. 컴파일에 성공하면 새로운 CRM에 로그인 단추가 있는 MainWindow가 표시됩니다. 공통 로그인 컨트롤을 표시하려면 단추를 클릭합니다.

    2. Dynamics 365에 연결할 자격 증명을 제공하여 인증을 테스트한 다음 로그인을 클릭합니다. 성공하면 연결된 버전과 조직을 나타내는 메시지가 나타납니다. 메시지를 닫으려면 확인을 클릭합니다.

      프로젝트 결과 테스트

    3. CRM에 로그인을 다시 클릭하면 응용 프로그램은 마지막 로그인 활동의 저장된 자격 증명을 선택하거나 새 자격 증명을 다시 입력할 것인지 묻는 메시지를 표시합니다.

      저장된 자격 증명

참고 항목

샘플: XRM 도구 API 빠른 시작
XRM 도구를 사용하여 클라이언트 응용 프로그램 빌드

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