Example #1
0
 /// <summary>
 /// Конструтор класса.
 /// </summary>
 /// <param name="activityContext">Контекст выполнения действия процесса.</param>
 public Context(CodeActivityContext activityContext)
 {
     SourceActivityContext = activityContext;
     _context        = new Lazy <IWorkflowContext>(() => SourceActivityContext.GetContext());
     _service        = new Lazy <IOrganizationService>(() => SourceActivityContext.GetService());
     _systemService  = new Lazy <IOrganizationService>(() => SourceActivityContext.GetService(null));
     _tracingService = new Lazy <ITracingService>(() => SourceActivityContext.GetTracingService());
 }
        /// <summary>
        /// Получение экземплпра CRM-сервиса.
        /// </summary>
        /// <param name="executionContext">Экземпляр класса <see cref="CodeActivityContext"/>.</param>
        /// <returns>
        /// Метод возвращает ссылку на экземпляр CRM-сервиса, запусщенного от имени пользователя, инициировавшего запуск действия процесса.
        /// </returns>
        public static IOrganizationService GetService(this CodeActivityContext executionContext)
        {
            var context = executionContext.GetContext();

            return(executionContext.GetService(context.UserId));
        }