Dynamics CRM 控制台应用程序

发布时间 2023-04-11 14:56:43作者: GongDonghai

Dynamics CRM 控制台应用程序

创建一个控制台应用程序,在Dynamics 365上执行CURD操作。

1.创建控制台应用
image

image

2.安装依赖
使用NuGet安装Microsoft.CrmSdk.Xrm.Tooling.CoreAssembly
image

3.在app.config文件添加配置节点
image
节点配置代码:

	<connectionStrings>
		<!-- Online using Office 365 -->
		<add name="Environment_PRD" connectionString="Url=https://xxx.crm.dynamics.cn/; Username=xxx.partner.onmschina.cn; Password=xxxxxx; AuthType=Office365;" />
		<add name="Environment_UAT" connectionString="Url=https://xxx.crm.dynamics.cn/; Username=xxx.partner.onmschina.cn; Password=xxxxxx; AuthType=Office365;" />
		<add name="Environment_DEV" connectionString="Url=https://xxx.crm.dynamics.cn/; Username=xxx.partner.onmschina.cn; Password=xxxxxx; AuthType=Office365;" />

		<!-- On-premises with provided user credentials -->
		<!-- <add name="CRMConnectionString"
         connectionString="Url=http://myserver/contoso; Domain=mydomain; Username=administrator; Password=password; AuthType=AD;"/> -->

		<!-- On-premises using Windows integrated security -->
		<!-- <add name="CRMConnectionString"
         connectionString="Url=http://myserver/contoso; authtype=AD;"/> -->

		<!-- On-Premises (IFD) with claims -->
		<!--<add name="CRMConnectionString"
         connectionString="Url=https://hostname.contoso.com/orgname; Domain=mydomain; Username=mydomain\administrator; Password=password; AuthType=IFD;"/>-->

		<!-- OAuth -->
		<!--<add name="CRMConnectionString"
	      connectionString="Url=https://contoso.crm.dynamics.com; Username=crmadmin@contoso.onmicrosoft.com; Password=password; AppId=<GUID>; RedirectUri=app://<GUID>; AuthType=OAuth;"/>-->
	</connectionStrings>

4.代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using Microsoft.Xrm.Tooling.Connector;
using Microsoft.Xrm.Sdk;
using Microsoft.Crm.Sdk.Messages;
using Microsoft.Xrm.Sdk.Query;
using System.ServiceModel;
using System.Configuration;

namespace GongDonghai.Dynamics365CURD
{
    class Program
    {
        static void Main(string[] args)
        {
            try
            {
                string connectionString = ConfigurationManager.ConnectionStrings["Environment_DEV"].ConnectionString;
                CrmServiceClient conn = new CrmServiceClient(connectionString);
                IOrganizationService service;
                service = conn.OrganizationWebProxyClient != null ? (IOrganizationService)conn.OrganizationWebProxyClient : (IOrganizationService)conn.OrganizationServiceProxy;

                Entity SampelEntity = new Entity();
                service.Create(SampelEntity);
                service.Update(SampelEntity);
                service.Retrieve(SampelEntity.LogicalName, SampelEntity.Id, new ColumnSet(true));
                service.Delete(SampelEntity.LogicalName, SampelEntity.Id);

            }
            catch (FaultException<OrganizationServiceFault> ex)
            {

                string message = ex.Message;
                throw;
            }

        }
    }
}