MS CRM / Разработка

CRM Guide: Подключение к CRM из внешнего приложения (CRM 2016 / Dynamics 365)

Создание подключения к Microsoft Dynamics CRM 2016 / Microsoft Dynamics 365 из внешнего приложения на .NET.

Говоря о подключении к CRM, имеется в виду создание экземпляра класса, обеспечивающего взаимодействие с CRM Organization Service и позволяющего выполнять запросы к данным и метаданным системы. Для внешних (по отношению к CRM) расширений, таких как консольные/WinForms/WPF-приложения, веб-сайты и пр. необходимо создать экземпляр класса OrganizationServiceProxy.

Для работы с классами CRM понадобятся библиотеки Microsoft.Xrm.Sdk.dll и Microsoft.Crm.Sdk.Proxy.dll, входящие в состав CRM SDK. Подключить их можно вручную или с помощью NuGet, установив пакет Microsoft.CrmSdk.CoreAssemblies (подробнее про использование NuGet).

Для подключения так же понадобиться адрес сервиса организации. Чтобы его получить, войдите в CRM, перейдите на страницу Параметры → Настройки → Ресурсы для разработчиков и загляните в поле Служба организации.

using System;
using System.Net;
using System.ServiceModel.Description;
using Microsoft.Crm.Sdk.Messages;
using Microsoft.Xrm.Sdk.Client;

namespace PZone.Samples
{
    class Program
    {
        static void Main(string[] args)
        {
            // On-premises, Integrated security
            var serviceUrl = "https://crmtest/dev01/XRMServices/2011/Organization.svc";
            var credentials = new ClientCredentials
            {
                Windows = { ClientCredential = CredentialCache.DefaultNetworkCredentials }
            };
            using (var service = new OrganizationServiceProxy(new Uri(serviceUrl), null, credentials, null))
            {
                // Execute request to CRM
                var currentUser = (WhoAmIResponse)service.Execute(new WhoAmIRequest());
                Console.WriteLine($"User ID: {currentUser.UserId}");
                Console.WriteLine($"Organization ID: {currentUser.OrganizationId}");
            }
        }
    }
}

Исходный код

About the author

Добавить комментарий