Dynamic CRM插件编写

发布时间 2023-09-15 11:15:48作者: 江渔湖

编写插件

  1.首先在VS中创建一个类库文件 注意:使用.Net 4.5.2的版本

    

  2.将  Microsoft.CrmSdk.CoreAssemblies, 右键管理NuGet包添加到项目中 注意:版本使用8.2.0

    

  3.在你的类中集成IPlugin接口,实现Execute(IServiceProvider serviceProvider)方法     然后开始编写你的逻辑,写完代码编译一下

      代码:

      using Microsoft.Xrm.Sdk;

      using System;

      using System.Collections.Generic;

      using System.Linq;

      using System.Text;

      using System.Threading.Tasks;

      using System.ServiceModel;      

      namespace ClassLibrary1

      {

        public class Class1 : IPlugin

        {          

          public void Execute(IServiceProvider serviceProvider)

          {          

               IPluginExecutionContext context = (IPluginExecutionContext)serviceProvider.GetService(typeof(IPluginExecutionContext));
                      IOrganizationServiceFactory serviceFactory = (IOrganizationServiceFactory)serviceProvider.GetService(typeof(IOrganizationServiceFactory));
                      IOrganizationService service = serviceFactory.CreateOrganizationService(null);

                     if (!context.InputParameters.TryGetValue("Target", out Object target) || !(target is Entity) || context.MessageName != "Update"               ||context.PrimaryEntityName != KDClaimBoxAndDetail.foton_kd_shipping || context.Stage != 40)
                     {
                          return;
                    }


                      Entity targetEntity = (Entity)target;

             try

             {

              }

             catch (Exception ex)
                     {
                          throw new InvalidOperationException(ex.Message);
                     }

          }

        }

      }  

  4.编写签名 鼠标右键项目选择属性