什么是上下文,serviceFactory和服务插件CRM 2011

本文关键字:服务 插件 CRM 2011 serviceFactory 上下文 什么 | 更新日期: 2023-09-27 18:11:27

我从七个月前就开始使用CRM了。我仍然不知道是什么,用于什么以及为什么使用这些变量。

public void Execute(IServiceProvider serviceProvider)
{
     Microsoft.Xrm.Sdk.IPluginExecutionContext context = (Microsoft.Xrm.Sdk.IPluginExecutionContext)
     serviceProvider.GetService(typeof(Microsoft.Xrm.Sdk.IPluginExecutionContext));
     IOrganizationServiceFactory serviceFactory = (IOrganizationServiceFactory) serviceProvider.GetService(typeof(IOrganizationServiceFactory));
     IOrganizationService service = serviceFactory.CreateOrganizationService(context.UserId);
}

我一直在寻找答案,但没有任何运气。

谢谢

什么是上下文,serviceFactory和服务插件CRM 2011

MSDN提供了一组很好的文章,从理解数据上下文开始。

简而言之,是这样的:

  1. IPluginExecutionContext是将所有上下文信息带入代码的地方。InputParametersOutputParameters成员包含例如记录插件正在被解雇,前和后图像,处理的消息(实际数据取决于你如何注册插件:pre VS post,确切的消息,在线或离线…)
  2. IOrganizationService对象,用于查询组织服务。最常见的使用场景是CRUD操作(创建、检索、更新、删除:注意死锁)。

IPluginExectionContext:

    定义在运行时传递给插件的上下文信息。包含描述插件在其中执行的运行时环境的信息、与执行管道相关的信息以及实体业务信息。
  1. 执行上下文在系统运行时传递给插件。执行方法的IServiceProvider参数。您可以从服务提供者获得上下文,如下面的插件代码所示。//从服务提供商处获取执行上下文

IPluginExecutionContext context = (IPluginExecutionContext)serviceProvider。GetService (typeof (IPluginExecutionContext));

IOrganizationService接口:为组织提供对元数据和数据的编程访问。