Workflow Foundation
-
Upload
getdevnet -
Category
Technology
-
view
989 -
download
2
description
Transcript of Workflow Foundation
Workflow Foundationв .NET Framework 4.0
Принципы работы и обзор возможностей
TulaDev.NET
Андрей КулешовCodemasters InternationalSenior C# Developer, Team Lead
[email protected] | http://www.codemastersintl.com/Blogs/Andrey-Kuleshov
Что будет:Цели и задачи Workflow FoundationПринципы построения Workflow 4Hello Workflow WorldWorkflow и окружающий мирCodeActivitiesDynamic WorkflowsWorkflow PersistenceWorkflow WCF Service
Цели и задачи Workflow Foundation
• Control Flow
• Реализация алгоритма внешне сходна с самим алгоритмом
• Улучшение коммуникации с экспертами предметной области
• Возможность изменять потоки выполнения на стороне клиента
Принципы построения Workflow 4• Всё состоит из Activities – минимальных строительных единиц
• Можно как использовать различные Activities из стандартной поставки, так и реализовывать собственные
•В визуальном дизайнере выстраивается поток выполнения
• Некоторые Activity выполняют действия, некоторые – управляют потоком
• Хранение Workflow – в виду XAML-файлов
ДемоHello Workflow World
Code Activities
• CodeActivity позволяет писать свой код• AsyncCodeActivity позволяет безопасно выполнять в нем асинхронные операции• Activities используют In/Out/InOutArgument<T> для передачи данных• Activities используют Variable<T> для хранения данных• Доступ к данным должен всегда осуществляться через контекст• Async/CodeActivity<T> задает результат как OutArgument <T>•Перегружайте CacheMetadata для лучшей производительности•Перегружайте CacheMetadata для валидации Custom Activities
Dynamic Workflows
• Workflow в .NET 4.0 хранятся в виде XAML
• По умолчанию workflow компилируется при компиляции всей программы
• Фактически, возможно создание Workflow из любой XAML-строки
• Хранение в виде файлов и в базах данных
• Редактирование на стороне клиента
ДемоDynamic Workflows
Workflows Persistence
• Большинство Workflows являются долгоживущими
• В первую очередь – при взаимодействии с человеком (изменение состояний в ответ на действия пользователя)
• Средство хранения Workflows с некоторой реализацией по умолчанию SqlWorkflowInstanceStore
• Сохранение традиций в области поддержки версионности Workflow (вылетает Loading Exception)
ДемоWorkflows Persistence
Чего сегодня не было,а стоило бы...
• Поддержка транзакций
• Разбор связки WF - WCF
• Работа с конкретными инстансами Workflow
• Детальный разбор Flowchart
• Другое
Вопросы?Внимательно слушаю
Андрей КулешовCodemasters InternationalSenior C# Developer, Team [email protected] | http://www.codemastersintl.com/Blogs/Andrey-Kuleshov
Источники• Центр разработчиков .NET – Windows Workflow Foundation
http://msdn.microsoft.com/ru-ru/netframework/aa663328• The Workflow Way
http://msdn.microsoft.com/en-us/library/dd851337.aspx• Сессия для новичков
http://www.msteched.com/2010/NorthAmerica/DEV207• A Developer's Introduction to Windows Workflow Foundation (WF) in .NET 4
http://msdn.microsoft.com/en-us/library/ee342461.aspx• Windows Workflow Foundation (WF) Screencasts
http://msdn.microsoft.com/en-us/netframework/wf-screencasts.aspx• Windows Workflow Foundation 4 Performance
http://msdn.microsoft.com/en-us/library/gg281645.aspx
Андрей КулешовCodemasters InternationalSenior C# Developer, Team [email protected] | http://www.codemastersintl.com/Blogs/Andrey-Kuleshov