Windows Workflow Foundation (WF) v .NET 4.5

Embed Size (px)

DESCRIPTION

A presentation about what's new in Windows Workflow Foundation in .NET 4.5 from NT conference 2012

Citation preview

  • 1. Windows WorkflowFoundation (WF) v .NET 4.5Damir Arh, Adacta d.o.o.Arhitekt programske opremeMVP Data Platform [email protected]://twitter.com/@DamirArh/http://www.damirscorner.com/Nivo 300

2. Kaj je novega? Izboljave urejevalnika Nove aktivnosti Alternativni modeli razvoja Podpora verzijamNivo 300 3. Zgodovina.NET 3.5.NET 4.5.NET 3.0.NET 4System.Workflow System.ActivitiesNivo 300 4. Izboljave urejevalnika Samodejno kreiranje aktivnosti Sequence Izboljave diagrama poteka Hitreje povezovanje aktivnosti Poimenovanje odloitvenih aktivnosti Dodajanje opomb Premikanje ve aktivnosti istoasno Laja navigacija Premikanje povrine urejevalnika Drevesni prikaz delovnega toka Brisanje spremenljivk iz prironega menija Prevajanje v primeru napak spodleti Nivo 300 5. Gostovanje urejevalnika v aplikacijivar designer = new WorkflowDesigner();var cfgSvc = designer.Context.Services.GetService();cfgSvc.SurroundWithSequenceEnabled = true;cfgSvc.AutoConnectEnabled = true;cfgSvc.AnnotationEnabled = true;cfgSvc.MultipleItemsDragDropEnabled = true;cfgSvc.PanModeEnabled = true; Nivo 300 6. Aktivnosti kot delegati Brez vrstice kode!Nivo 300 7. Izrazi v C# Enakovredna podpora kot za VB: Intellisense Barvanje sintakse Validacija Privzeto v novih C# projektih Doloeno v XML zapisu delovnega toka Nivo 300 8. Avtomati stanj Na voljo e v .NET Framework 4 PlatformUpdate 1 http://bit.ly/Net4PU1 Nekaj manjih izboljav v .NET 4.5 Alternativni model razvoja Stanja Prehodi med stanji Sproilec PogojNivo 300 9. Kreiranje storitve za obstojeopogodbo Izhodie je vmesnik storitve WCF ServiceContract[ServiceContract]public interface IBookService{[OperationContract]void Buy(string bookName); [OperationContract] void Checkout();}Nivo 300 10. Vzporedno izvajanje razlinih verzijvar v1Identity = new WorkflowIdentity { Name = "Order Service v1", Version = new Version(1, 0, 0, 0)};var v1Service = new WorkflowService { Name = "OrderService", Body = new OrderServiceV1(), DefinitionIdentity = v1Identity};var host = new WorkflowServiceHost(v2Service, serviceUri);host.SupportedVersions.Add(v1Service);Nivo 300 11. Posodabljanje instanc medizvajanjem Izdelava preslikave za dinamino posodabljanje Ugotavljanje verzije instanc med izvajanjem Posodabljanje instanc z uporabo preslikaveNivo 300 12. Izdelava preslikavevar xRdr = new XamlXmlReader(wfFilename, settings);var bRdr = ActivityXamlServices.CreateBuilderReader(xRdr);var builder = XamlServices.Load(bRdr) as ActivityBuilder;DynamicUpdateServices.PrepareForUpdate(builder);designer.Load(builder);var map = DynamicUpdateServices.CreateUpdateMap(builder);var s = new DataContractSerializer(typeof(map.GetType()));using (var str = File.Open(mapFilename, FileMode.Create)){s.WriteObject(str, map);}Nivo 300 13. Branje verzije in posodabljanjevar instance = WorkflowApplication.GetInstance(id, store);if (instance.DefinitionIdentity.Version = version){var app = new WorkflowApplication(v2Wf, v2Identity);app.Load(instance, updateMap);app.Unload();} Nivo 300 14. Prvi vtisi ? Ogrodje dozoreva Izboljana uporabnika izkunja Veja fleksibilnost Bolj enostaven razvoj Podpora verzioniranju Prva verzija Napake v dokumentaciji Pomanjkanje virovNivo 300 15. Viri Visual Studio 11 Beta http://bit.ly/VS11beta Pregled novosti http://bit.ly/NewInWF45 Primeri podpore verzioniranju http://bit.ly/DynamicUpdateSamples Nivo 300 16. VPRAANJA?Po zakljuku predavanja, prosimo, izpolnite vpraalnik.Vpraalniki bodo poslani na va e-naslov, dostopni pa bodo tudipreko profila na spletnem portalu konference www.ntk.si.Najlepa hvala!Nivo 300