4 pagine in totale: <<Indietro 1 2 3 [4]
Workflow Service
In WF 3.5 sono presenti due nuove Activity: SendActivity e ReceiveActiviy. La prima permette di invocare operazioni di servizi WCF, sia OneWay oppure aspettando una risposta o un fault. La ReceiveActivity, invece, è in grado di implementare un'operazione di un servizio WCF attraverso un flusso di lavoro, dandogli così il nome di Workflow Service. In pratica una chiamata ad un servizio WCF esposto tramite uno speciale host, permette di attivare un'istanza di WF, di processarne la richiesta tramite essa ed eventualmente di rispondergli.
Poiché un workflow può durare nel tempo ed impiegare anche anni, il servizio WCF sfrutta i Durable Service per memorizzare il proprio stato in un unione ai servizi di persistenza che già WF dispone. In realtà i Durable Service sono nati principalmente per lavorare con i WF e non a caso si trovano nell'assembly System.WorkflowServices.dll.
Le due nuove Activity, quindi, supportano la possibilità di identificare un dialogo mediante la proprietà ContextToken (possono essere molteplici all'interno di una stessa istanza), mentre la ReceiveActivity con CanCreateInstance consente di indicare se creare una nuova istanza del servizio di workflow, permettendo inoltre anche scenari in cui due o più flussi di lavoro si parlano tra di loro.
Per ospitare e istanziare i Workflow Service è presente una nuova la classe WorkflowServiceHost che permette di mettere in ascolto il servizio e di attivare internamente il runtime di WF:
// Creo l'host del servizio WorkflowServiceHost workflowHost = new WorkflowServiceHost(typeof(CartServiceWorkflow)); // Mi metto in ascolto workflowHost.Open(); Console.WriteLine("I am listening."); Console.WriteLine("Press <enter> to exit."); // Attendo <invio> per chiudere l'host Console.ReadLine(); workflowHost.Close();
In alternativa il WorkflowServiceHostFactory consente di esporre il servizio tramite file .svc in IIS:
<%@ServiceHost Service="ASPItalia.com.Services.CartServiceWorkflow"
Factory="System.ServiceModel.Activation.WorkflowServiceHostFactory" %>
In entrambi i casi, occorre specificare nel config l'endPoint e il behavior come nell'esempio dei Durable Service. Inoltre nel behavior è possibile configurare il runtime del WF e quali servizi caricare:
<workflowRuntime name="WorkflowServiceHostRuntime" validateOnCreate="true" enablePerformanceCounters="true"> <services> <!-- persistenza su SQL del WF --> <add type="System.Workflow.Runtime.Hosting.SqlWorkflowPersistenceService, System.Workflow.Runtime, Version=3.0.00000.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionString="..." LoadIntervalSeconds="1" UnLoadOnIdle="true" /> </services> </workflowRuntime>
Conclusioni
In questo articolo si sono viste le principali nuove caratteristiche introdotte nel .NET Framework 3.5, volte ad apportare piccoli ritocchi a librerie che si sono già dimostrate potenti e complete. Tutto questo grazie all'ottima architettura che WF e in particolare WCF hanno e allora loro capacità di poter essere estesi in tutte le loro parti, permettendo, in questa nuova release, di adattarsi facilmente all'evoluzione del web.
Lo speciale completo su Visual Studio 2008, Windows Server 2008 e SQL Server 2008
- .NET Framework 3.5 e Visual Studio 2008: cosa c'è di nuovo di Riccardo Golia
- Le novità di C# 3.0 e Visual Basic 9.0 attraverso LINQ di Stefano Mostarda
- Introduzione a LINQ, LINQ to XML, Object e DataSet di Stefano Mostarda

- Introduzione ad ASP.NET 3.5: novità e caratteristiche di Daniele Bochicchio
- Introduzione ad ASP.NET 3.5 di Daniele Bochicchio

- Le novità di Communication e Workflow Foundation e la loro cooperazione nel .NET Framework 3.5 di Cristian Civera
- Windows Presentation Foundation 3.5: 3D interattivo e le altre novità del framework di Marco Leoncini
- Utilizzare Visual Studio 2008 per semplificare lo sviluppo con LINQ to SQL di Andrea Zani
- Uno sguardo a LINQ to SQL di Stefano Mostarda

- Le nuove caratteristiche di IIS 7.0 per sviluppatori e sistemisti di Daniele Bochicchio, Christian Paparelli
- Gestire transazioni miste con NTFS in Windows Server 2008 di Ugo Lattanzi
- LINQ oltre SQL e XML: creare un provider per l'integrazione con Live Search di Alessandro Catorcini
- Tracciare le modifiche ai dati e allineare i datawarehouse con il Change Data Capture in SQL Server 2008 di Luca Bianchi
4 pagine in totale: <<Indietro 1 2 3 [4]
Contenuti dell'articolo
- Le novità del .NET Framework 3.5 SP1 in Windows Presentation Foundation
- Introduzione a .NET Micro Framework
- Gestire transazioni miste con NTFS in Windows Server 2008
- Windows Presentation Foundation 3.5: 3D interattivo e le altre novità del framework
- .NET Framework 3.5 e Visual Studio 2008: cosa c'è di nuovo
- Gestione delle eccezioni in Windows Communication Foundation
- Sviluppare workflow sequenziali con WF
- WPF: dal DataBinding ai Template - Terza parte
- WPF: dal DataBinding ai Template - Seconda parte
Aggiungi un nuovo commento »»»
Per inserire un commento, devi registrarti alla nostra community.




Difficoltà

Stampa
Download 


10annidi.ASPItalia.com: iscriviti alla competizione e vinci fantastici premi ogni mese!