Вопрос

Я изучаю Windows Workflow (WF) для .NET 4.0, и, похоже, отсутствует несколько частей. Из BPM Перспектива, вы хотите иметь концепции рабочих очередей и безопасности (авторизация пользователя).

Например, скажем, у вас есть несколько дополнительных экземпляров рабочих процессов из нескольких разных рабочих процессов, работающих на сервере приложений (например, AppFabric). Несколько экземпляров ждут активности для вызова от клиента (возможно, получают WCF с корреляцией на основе контента). Клиенты должны быть в состоянии запрашивать сервер, чтобы определить, какие экземпляры рабочего процесса (с любого рабочего процесса) ждут ввода от них. Это должно быть на основе прав (предпочтительно, используя службы Active Directory) на уровне активности.

Например:

  • Рабочий процесс 1.
    • Деятельность A, коррелированная по адресу
      • Права на: Эбби, Билл
    • ДЕЯТЕЛЬНОСТЬ B, коррелирует по адресу
      • Права на: Эбби
  • Рабочий процесс 2.
    • ДЕЯТЕЛЬНОСТЬ C, коррелирует на рабочую силу
      • Права для: Билл

Рабочий процесс 1 имеет 3 экземпляра, работающих, два при активности A (orders 123 и 456) и один при активности b (порядка 789).
Рабочий процесс 2 имеет 1 экземпляр, работающий при активности C (рабочий элемент 99).

Запрашивает счет сервер и видит:

Ключ активности рабочего процесса 1 Оформление = 123 1 Оформление = 456 2 C WorkiteMID = 99

Abby queries сервер и видит:

Ключ активности рабочего процесса 1 Оформление = 123 1 Оформление aidory = 456 1 b ramuesid = 789

Эта статья Обсуждается написание функциональности (поддержка человеческой деятельности) с нуля для WF 3.x.

Вопросы:

  1. Кто-нибудь из этой функциональности в WF 4? Если так, то, что это называется?
  2. Если нет, есть ли проект с открытым исходным кодом, который добавляет любой из этих функций WF 4?
  3. Если нет, есть ли более современные рекомендации для его реализации, чем в статье, упомянутой выше?

ПРИМЕЧАНИЕ. Я предпочел бы не парить решение SharePoint, если смогу избежать этого.

Это было полезно?

Решение

Хорошо, давайте начнем с простых avners.

  1. Нет нет прямой поддержки для этого в коробке
  2. Насколько я знаю, нет проекта ОС, предлагая эту функциональность.
  3. Не то чтобы я осознаю, но тогда я должен признать, что я тоже не знал об этой статье.

До сих пор за плохие новости.

Предположим, вы хотите написать что-то вроде этого, есть некоторые основные строительные блоки на месте. Если вы используете SQLWorkFlowInStanceRe, вы получите столбец, содержащий текущие закладки для данного рабочего процесса. Это скажет вам, какие полученные мероприятия активны в данном рабочем процессе в данный момент.

Существует также концепция продвижения имущества в SQLWorkflowInStancestare, который позволит вам извлечь, и, следовательно, запрос, переменные рабочих процессов, таких как aidory в вашем примере. Еще одна вещь для регистрации - это человек, который начал рабочий процесс, так как нередко определенные действия допускаются только отправителем.

Пара их с пользовательской таблицей с правилами безопасности на рабочем процессе и WCF Операция, и я должен подумать, что вы хорошо на вашем пути к базовой реализации здесь.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top