Microsoft Dynamics 365에 대한 프로그래밍 모델

 

게시 날짜: 2017년 1월

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

Microsoft Dynamics 365은 사용자의 요구에 가장 적합한 것을 결정하기 위해 유연성을 제공하도록 설계된 몇 가지 프로그래밍 모델을 제공합니다.

다음 다이어그램은 Microsoft Dynamics 365(온라인 및 온-프레미스)에 대한 주요 프로그래밍 시나리오에 대해 설명합니다. 생성한 솔루션 유형에 대한 적절한 Microsoft Dynamics 365 프로그래밍 모델을 사용하십시오.

CRM 2016 프로그래밍 시나리오

이 항목의 내용

Microsoft Dynamics 365에 연결 중

서버에서 연장

응용 프로그램의 연장

Microsoft Dynamics 365에 연결 중

Microsoft Dynamics 365에 있는 데이터에 접근하도록 클라이언트를 작성할 때 두 가지 옵션이 있습니다. 조직 서비스나 웹 API를 사용할 수 있습니다.

웹 API

웹 API는 Microsoft Dynamics 365과 함께 소개되었으며 다양한 프로그래밍 언어, 플랫폼 및 장치에서 사용할 수 있는 개발 환경을 제공합니다.OData (Open Data Protocol) v4를 구현하는 웹 API. OData는 다양한 데이터 원본 보다는 RESTfulAPIs 구축과 소비에 대한 OASIS 표준입니다.

웹 API를 사용할 때, OData v4 표준을 지원하는 커뮤니티 지원 목록에서 선택할 수 있습니다.HTTP을 사용하여 코드 작성을 하기로 선택할 수도 있습니다.추가 정보:Microsoft Dynamics 365 웹 API 사용

인터넷 연결 배포(IFD)로 Microsoft Dynamics 365(온라인) 또는 온-프레미스 환경에 연결할 때, Azure AD 인증 라이브러리(ADAL)을 사용하여 다양한 프로그래밍 언어와 플랫폼에서 인증을 할 수 있습니다.추가 정보:웹 API를 사용하여 Microsoft Dynamics 365 인증

참고

조직 데이터 서비스(또는 OData 끝점)는 웹 API를 위해 Microsoft Dynamics 365에서 사용되지 않는 OData v2 서비스입니다. 조직 데이터 서비스는 위의 다이어그램에 포함되지 않습니다. 조직 서비스는 여전히 사용된 코드를 지원할 수 있습니다. 그러나 Microsoft Dynamics 365에 대한 모든 새 개발에 대해 웹 API를 사용할 것을 권장합니다.추가 정보:웹 리소스와 함께 OData 끝점 사용

조직 서비스

.NET 개발자라면, 웹 API 또는 조직 서비스 중 하나를 사용할 수 있습니다. 조직 서비스로 어셈블리의 집합을과 도구를 사용하여 사용자 지정 엔터티를 포함하는 강력한 형식의 클래스와 Microsoft Dynamics 365의 인스턴스에 추가 된 특성을 생성할 수 있습니다.

Sdk 및 코드 생성을 위한 도구를 사용하여 OrganizationServiceContext를 포함할 수 있으며, 이는 데이터 서비스WCF(Windows Communication Foundation) 내의 DataServiceContext와 같은 개념을 기반으로 합니다. 클래스를 사용하면 변경 내용을 추적하고, ID 및 관계를 관리하고, Microsoft Dynamics 365.NET LINQ(Language-Integrated Query) 공급자에 대한 액세스를 제공합니다. 코드 생성 도구를 사용 하면, 엔터티에 대한 강력한 형식의 클래스와 코드 생성 도구를 실행하는 경우에 정의된 특성을 얻습니다. 이들은 초기 바인딩 클래스라고 불립니다.추가 정보:코드에 초기 바인딩 엔터티 클래스 사용

코드 생성 도구가 실행된 시점에 알 수 없었던 특성과 엔터티를 코드에 사용할 필요가 있는 경우, 코드에 있는 엔터티 및 엔터티 특성을 지정하는데 사용할 수 있는 Entity 클래스를 사용할 수 있습니다. 이 late-bound 코드 작성 스타일 더 많은 융통성을 제공하지만 모든 형식의 펌파일 타임 검사를 허용하지 않기 때문에 암시적 캐스트가 발생하지 않습니다. 개체를 만들거나 형식에서 작업을 수행 하는 경우에만 Late binding은 종류를 확인합니다.Entity 클래스에는 암시적 캐스팅을 방지하기 위해 유형을 명시적으로 지정해야 합니다.추가 정보:코드에 런타임에 바인딩 엔터티 클래스 사용

Windows 클라이언트를 생성하거나 Windows PowerShell를 사용하는 경우, Xrm.Tooling는 Windows 클라이언트 개발에 특화된 추가 기능과 자원을 제공하기 위해 SDK 어셈블리를 사용하는 API 집합을 제공합니다.추가 정보:XRM 도구를 사용하여 클라이언트 응용 프로그램 빌드

서버에서 연장

플랫폼의 표준 동작을 수정하거나 늘리기 위해 사용자 지정 비지니스 논리를 적용하고 이벤트를 듣는 코드를 쓸 수 있습니다. 이 코드는 .NET 관리 코드를 사용하여 쓸 수 있으며 개발자 경험은 SDK 어셈블리에 정의된 동일한 개체를 기반으로 합니다.Microsoft Dynamics 365 데이터와 작을 수행하기 위해 조직 서비스와 함께할 수 있습니다.추가 정보:플러그 인을 작성하여 비즈니스 프로세스 확장.

윈도우 워크플로 파운데이션 프로그래밍 모델을 기반으로 사용자 지정 프로세스를 만들 수 있습니다. 다양한 유형의 프로세스를 만들 수 있습니다. 대부분 워크플로 디자이너를 사용합니다. 하지만 디자이너에서 얻을 수 없는 일부 기능이 있는 경우, 코드를 사용하는 프로세스를 정의할 수 있습니다.추가 정보:Dynamics 365 프로세스를 사용하여 비즈니스 프로세스를 자동화

응용 프로그램의 연장

Microsoft Dynamics 365가 제공하는 각 클라이언트 응용 프로그램은 사용자 지정을 정의하고 여러 종류의 클라이언트를 배포할 수 있는 능력을 포함하고 있습니다. 웹 응용 프로그램, Outlook용 Microsoft Dynamics 365, 태블릿용 Dynamics 365, 및 휴대폰용 Dynamics 365 각각은 사용자 지정 탐색 및 명령 옵션을 포함하는 기능을 제공하며, 클라이언트에서 응답성이 뛰어난 환경을 제공하기 위해 JavaScript와 함께 사용할 수 있는 Xrm.Page 개체 모델 및 Xrm.Utility 함수를 포함합니다.JavaScript라이브러리, HTML 페이지, 이미지 및 기타 클라이언트에 표시 되거나 사용될 수 있는 파일 형식은 URL 웹 주소 지정 가능 리소스로 사용할 수 있습니다.추가 정보:Microsoft Dynamics 365에서 JavaScript 사용Microsoft Dynamics 365용 웹 리소스 두 가지가 있습니다.

JavaScript 코드가 실행되고 있는 컨텍스트에서 사용할 수 없는Microsoft Dynamics 365 데이터에 엑세스 하려는 경우, 필요한 데이터를 가져오기 위해 서버에 호출을 만들 수 있습니다. 조직 서비스를 사용할 수 있지만, 조직 서비스가 필요로 하는 XML 보다 JSON와 함께 웹 API를 사용하는 것이 훨씬 쉽습니다. 스크립트가 응용 프로그램의 컨텍스트에서 실행되므로, 자동으로 인증 됩니다.추가 정보:Microsoft Dynamics 365 웹 API(클라이언트 쪽 JavaScript) 시작하기

참고 항목

방법
Microsoft Dynamics 365에 대한 개발 학습 자습서 및 리소스
Microsoft Dynamics 365을 사용한 개발에 대한 유용한 정보
개발자 도구

Microsoft Dynamics 365

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