У меня есть веб-приложение, в которое я добавляю функциональность рабочего процесса в Windows Workflow Foundation. Я основал свое решение на примере Orders Workflow K. Scott Allen на OdeToCode. В начале я не осознавал значение предостережения «если вы используете действия« Задержка »и настраиваете активные таймеры для службы ручного планирования, эти события будут происходить в фоновом потоке, который не связан с HTTP-запросом». Теперь мне нужно использовать действия «Задержка», и это не работает, как с его архитектурой решения. Кто-нибудь сталкивался с этим и нашел для этого хорошее решение? Пример связан со многими местами, но я не видел, чтобы кто-нибудь еще сталкивался с этой проблемой, и это кажется чем-то вроде пробки для шоу.
Редактировать: проблема в том, что результаты рабочего процесса возвращаются в веб-приложение через HttpContext. Я использую ManualWorkflowSchedulerService с useActiveTimers, и это прекрасно работает для большинства ситуаций, потому что события рабочего процесса запускаются из веб-приложения, и HttpContext все еще существует, когда возвращаются результаты рабочего процесса и веб-приложение может продолжить обработку. Когда используется операция задержки, обработка происходит в фоновом потоке и когда он пытается вернуть результаты в веб-приложение, отсутствует действительный HttpContext (поскольку не было запроса Http), поэтому дальнейшая обработка завершается неудачно. То есть веб-приложение пытается обработать результаты рабочего процесса, но не было http-запроса.
Я думаю, что мне нужно выполнять всю последующую обработку действий в рамках рабочего процесса, а не передавать ее в веб-приложение.
Приветствие.