Комментарии 36
Небольшое примечание:
Вы некоторые слова выделили через подчеркивание. В интернете подчеркивание считается ссылкой. Если подчеркнутый текст не ссылка, это смущает. Используйте "Жирный"
А так статья отличная. Мне лично понравилось.
Вы некоторые слова выделили через подчеркивание. В интернете подчеркивание считается ссылкой. Если подчеркнутый текст не ссылка, это смущает. Используйте "Жирный"
А так статья отличная. Мне лично понравилось.
Внешний вид статьи похож на книжки от Microsoft :).
Чем график нарисован?
Написали свой Visio плагин для дизайна Workflow процессов. После редактирования процесс прямо из Visio публикуется в систему, при этом генерируется рабочий Workflow Service.
Может быть поделитесь плагином? Это было бы полезно многим т.к. идея очень здравая — передать редактирование workflow бизнес подразделениям.
Зачем? Есть какая-то причина не использовать VMDK?
А почему не захостили дизайнер?
в workflow foundation есть серъёзный недостаток, если используете persistence и у вас имеются workflow instances сохраненные на полпути и в workflow были внесены изменения, foundation не сможет эти изменениямкорректно обработать и instances становятся не валидными.
Мы решили эту проблему путем сохранения Workflow сервисов в базе, то есть их версионирования. При изменении Workflow, добавляется его новая версия. Существующие экземпляры Workflow используют свои версии Workflow сервиса, а все новые экземпляры используют последнюю версию.
Позже напишу пример реализации подобного сценария.
Позже напишу пример реализации подобного сценария.
Инструкция хорошая. Но очень примитивная.
Хотелось бы разобраться с длительными процессами, когда есть сохранение промежуточных состояний в базе. И конечно, хотелось бы глянуть, как обрабатываются инстансы для отредактированных процессов.
Жду продолжения!
Хотелось бы разобраться с длительными процессами, когда есть сохранение промежуточных состояний в базе. И конечно, хотелось бы глянуть, как обрабатываются инстансы для отредактированных процессов.
Жду продолжения!
Вообще интересно… Как-раз сейчас работаю над проектом, где пользователь сам может создавать сценарии, а затем их проходить. То есть череда вопросов и в зависимости от ответов-генерация других вопросов или действий. Реализовали это дело без WF (опыта в WF ни у кого из команды небыло, а проект срочный). Интересно посмотреть на более серъезный пример использования… Например вкусно будет узнать, как пользователям дать редактировать процессы… Конечно могу и сам почитать в соответствующей литературе, но именно в данный момент приоритеты другие и просто нет времени =( Статья была бы в самый раз для знакомства. Нои за введение-спасибо =)
WF дизайнер не совсем подходит в нашем конкретном случае, он слишком сложен для не технического пользователя. А Visio знаком всем бизнес-аналитикам. Представьте, что показываете руководству потенциального клиента две картинки: первую из самого начала статьи, вторую вашу. Думаю, очевидно, какой вариант окажется более понятным и привлекательным для человека из бизнеса — проверено на собственном опыте. А WF дизайнер отлично подойдет для продуктов, ориентированных на продвинутых технических пользователей.
Единственное, чего я не понял, почему достаточным окзалось ипользовать 3 Primitive Assign Activity, хотя по уму нужно использовать 4. Даже на картинке видно, что последнее Else в контроле IF (IsDesignerNecessary) осталось пустым.
Result нигде не инициализировался, по идее, если ответить три раза No, он должен остаться равен Null.
Почему же он возвращает False?
Result нигде не инициализировался, по идее, если ответить три раза No, он должен остаться равен Null.
Почему же он возвращает False?
Действительно, для полноты картины напрашивается четвертый Assign для присвоения результату False. Но поскольку для переменной типа bool значением по умолчанию итак является False, то это не обязательно. Точно также как равнозначны следующие две строки кода:
bool result;
bool result = false;
Дело вкуса.
bool result;
bool result = false;
Дело вкуса.
Насчёт вашей статьи «Windows Workflow Foundation – для чего и в каких случаях применять», пара опечаток:
Мы разработали свой собственный дизайнер, чтобы максимально упростить и облегчить редактирование процессов конечному пользователю (бизнес-аналитику).
Мы разработали свой собственный дизайнер, что бы максимально упростит и облегчить редактирование процессов конечному пользователю (бизнес аналитику).должно быть:
Мы разработали свой собственный дизайнер, чтобы максимально упростить и облегчить редактирование процессов конечному пользователю (бизнес-аналитику).
А можно подробнее про варианты использования? Было бы здорово в общих чертах узнать реальное применение, где крутятся сервисы, какого типа приложения их используют и как. А то пример реализации IF в визуальном редакторе ну никак не намекает на какие-либо преимущества WWF.
Небольшое добавление, при использовании Long State Workflow реккомендую добавлять к свойствам классов (которые сериализуются вместе с Workflow, ведь вы же где-то храните состояния) атрибуты вида: [DataMember(IsRequired = false, Order=0)] иначе будут проблемы при обновлении приложения и десериализации Workflow Instance после.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Windows Workflow Foundation – для чего и в каких случаях применять