Как разработать веб-приложение на ASP. Net, которое будет следовать процессу, определенному в рабочем процессе? - PullRequest
3 голосов
/ 17 июня 2020

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

В качестве примера рассмотрим следующую блок-схему, созданную пользователем, которая будет запрашивать некоторые подсказки и собирать несколько абзацев текста для формирования письма или документа.

enter image description here

Я подумал, что могу использовать Windows Workflow Foundation, чтобы определить эту блок-схему. На мой взгляд, я решил определить два настраиваемых действия; один для запроса чего-либо у пользователя, который я называю действиями подсказок (пронумерованными как 2, 5 и 7 на изображении выше), а другой для добавления блока документа (пронумерованным как 4, 9, 10 и 11 на изображении выше) на основе ответ на ввод для предыдущего запроса. Эти настраиваемые подсказки будут иметь несколько свойств, таких как отображаемый текст подсказки, тип подсказки, чтобы указать, является ли это радиокнопкой, раскрывающимся списком или флажком, а также набор, чтобы указать, какие элементы должны отображаться в этих элементах управления. и переменная «out», которая, по сути, является выбором, сделанным пользователем. Этот выбор можно использовать в блок-схеме для определения пути выполнения.

В качестве примера приведенного выше, скажем, я установил свойства, как указано выше, тогда они будут такими: enter image description here

При этом, когда я вызываю рабочий процесс из веб-приложения, я ожидаю увидеть следующее: enter image description here

Тогда, если бы я выбрал «Нет» затем раскрывающийся список выглядит следующим образом:

enter image description here

, и если бы я выбрал 3-й элемент, он должен показать:

enter image description here

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

Я пробую это с помощью Windows Workflow Foundation и определил эти настраиваемые действия. Я также создал необходимые JavaScript функции, которые будут принимать ввод, создавать эти переключатели и отображать их динамически. Я скучаю по подключению рабочего процесса, и я не знаю, как это сделать.

Я не ограничен WWF, я также могу использовать любые сторонние решения. Я искал на многих форумах и в видеороликах YouTube, но не смог найти недостающую ссылку.

Любая помощь приветствуется. Спасибо.


Обновление: наткнулся на что-то под названием Закладки , и, возможно, рабочий процесс можно приостановить, а вышеперечисленное может быть выполнено - нужно проверить, но было бы здорово если кто-то, кто разбирается в этом, может пролить свет. Спасибо.

1 Ответ

1 голос
/ 02 июля 2020

WWF сейчас довольно старый, вы можете рассмотреть CoreWF (экспериментальный):

https://github.com/UiPath-Open/corewf

Связано: Учтите, что приложение, которое вы планируете, имеет все атрибутов проектирования вашего собственного визуального домена Specifi c Language, поэтому я бы посоветовал взглянуть на эту проблему через призму DSL, а не через тяжеловесную систему рабочего процесса.

DSL очень распространены в системах, где бизнес-лог c необходимо изменить вне обычного процесса разработки программного обеспечения.

Если вы не можете найти что-то в Интернете, я бы рекомендовал https://martinfowler.com/books/dsl.html

Тот факт, что ваш визуальное программирование не меняет того факта, что оно все еще программируется, и вам придется иметь дело со всем синтаксическим анализом, грамматикой, проверкой синтаксиса и обработкой ошибок времени выполнения обычного DSL, в дополнение к сложностям визуального дизайнера .

...