如何在Microsoft Dynamics CRM 2011的自定义工作流中获取当前用户的UserId?

Cha*_*C R 3 workflow-activity dynamics-crm-2011

我需要Microsoft Dynamics CRM 2011的自定义工作流程中的当前用户的userId.那么你能建议我如何获得它吗?

Ant*_*ine 10

假设您正在使用,并且您在MSDN中创建自定义工作流活动文章之后创建了自定义工作流,它应该继承CodeActivity类,并且具有以下方法:

protected override void Execute(CodeActivityContext context)
{
  // Your code here
}
Run Code Online (Sandbox Code Playgroud)

为了得到当前userId,你需要获得IWorkflowContextCodeActivityContext,就像这样:

IWorkflowContext workflowContext = context.GetExtension<IWorkflowContext>();
Run Code Online (Sandbox Code Playgroud)

然后:

var id = workflowContext.UserId;
Run Code Online (Sandbox Code Playgroud)