C# 插件CRM 2011中的内容、上下文、serviceFactory和服务是什么

C# 插件CRM 2011中的内容、上下文、serviceFactory和服务是什么,c#,dynamics-crm-2011,C#,Dynamics Crm 2011,我从七个月前开始在CRM工作。我仍然不知道是什么,使用了什么,为什么使用这些变量 public void Execute(IServiceProvider服务提供者) { Microsoft.Xrm.Sdk.IPluginExecutionContext上下文=(Microsoft.Xrm.Sdk.IPluginExecutionContext) GetService(typeof(Microsoft.Xrm.Sdk.IPluginExecutionContext)); IOOrganizati

我从七个月前开始在CRM工作。我仍然不知道是什么,使用了什么,为什么使用这些变量

public void Execute(IServiceProvider服务提供者)
{
Microsoft.Xrm.Sdk.IPluginExecutionContext上下文=(Microsoft.Xrm.Sdk.IPluginExecutionContext)
GetService(typeof(Microsoft.Xrm.Sdk.IPluginExecutionContext));
IOOrganizationServiceFactory serviceFactory=(IOOrganizationServiceFactory)serviceProvider.GetService(类型为(IOOrganizationServiceFactory));

IOOrganizationService=serviceFactory.CreateOrganizationService(context.UserId); }
我一直在寻找答案,但运气不好


谢谢

MSDN提供了一套很好的文章,从

简而言之,它是这样的:

  • IPluginExecutionContext
    是将所有上下文信息带到代码中的地方
    InputParameters
    OutputParameters
    成员包含例如插件被触发的记录、前置和后置图像、处理的消息(实际数据取决于您注册插件的方式:前置VS后置、确切的消息、在线或离线…)
  • ioOrganizationService
    对象允许您查询组织服务。最常见的使用场景是CRUD操作(创建、检索、更新、删除:小心死锁)

  • IPluginExectionContext:

  • 定义在运行时传递给插件的上下文信息。包含描述插件在其中执行的运行时环境的信息、与执行管道相关的信息以及实体业务信息
  • 执行上下文在运行时传递给Execute方法的System.IServiceProvider参数中的插件。您可以从服务提供者处获得上下文,如以下插件代码所示。 //从服务提供程序获取执行上下文
  • IPluginExecutionContext上下文=(IPluginExecutionContext)serviceProvider.GetService(typeof( IPluginExecutionContext)

    i组织服务界面:
    为组织提供对元数据和数据的编程访问。

    我知道了。非常感谢你!serviceFactory.CreateOrganizationService(context.UserId):如果一个用户属于多个组织怎么办?