In questi giorni ho fatto il “grande salto”. Dopo 13 anni con TIM sono passato a Vodafone e contestualmente ho preso una chiavetta USB per collegarmi ad Internet senza allocare la banda del cellulare (sino ad oggi mi collegavo con il mio cellulare Windows Mobile via USB o Bluetooth, ma questo comportava che avessi quasi sempre il cellulare occupato).
Sul mio PC ho installato Windows 7 build 7100 a 64bit. Sono molto soddisfatto della scelta fatta, ma la chiavetta Vodafone non ne voleva sapere di funzionare. Scrivo qui una traccia perché magari serve anche ad altri. Ho provato a collegare la chiavetta su un PC con Windows 7 a 32bit e tutto ha funzionato correttamente. Allora ho cercato nel Device Manager e ho scoperto che viene installata una periferica modem di tipo “Globe Trotter GI41x” con produttore “Option NV”. Ho cercato sulla rete e ho trovato che il produttore sul suo sito offre sia i driver a 32bit che quelli a 64bit, oltre ad un client molto più rapido da usare rispetto a quello fornito da Vodafone. Mi è bastato inserire il codice IMEI/Seriale della mia VIK. Risultato: questo post lo sto scrivendo via VIK con Windows 7 a 64bit.
Sinceramente non mi spiego perché (apparentemente) il setup fornito da Vodafone non supporti i 64bit, comunque il problema ora è risolto.
Come molti di voi avranno notato, nella CTP di VS2010 uscita il mese scorso manca il template di workflow di tipo State Machine. Con .NET 4.0 il motore di WF4 è stato praticamente riscritto, il prodotto è stato completamente integrato con WCF4 (i due team di prodotto infatti si sono fusi, forse dovremmo parlare di “fusione per incorporazione” di WF :-) …). Ora in WF4 i workflow saranno orientati solo al markup e non dovrebbe più esistere il concetto di code beside di un workflow. Anche il set di activity di base (vedi qui per averne un’idea) e il modello di estendibilità delle activity personalizzate sono cambiati. Ora le activity non sono più classi derivate dalla classe base Activity, ma classi di una delle seguenti tipologie:
- WorkflowElement: classe base astratta per tutte le tipologie di activity
- Activity: definite come markup e frutto della composizione di altre activity, come i workflow stessi
- CodeActivity: classe base per le activity definite come codice, con l’override del metodo di Execute
- NativeActivity: classe base per le activity definite come codice, che devono interfacciarsi con il motore di base di WF4, con il sistema di messaggi a code (ora ribattezzate bookmark), ecc.
In questo contesto sono stati inseriti dei nuovi modelli di workflow. Nello specifico esiste ancora, seppur ridefinito con nuove activity e con un nuovo designer, il modello di Sequential workflow. Esiste un nuovo modello di workflow chiamato Flowchart, che può anche essere una parte di un workflow Sequential. Come citavo all’inizio del post poi non esiste più il modello di tipo State Machine. Mentre inizialmente (lo scorso anno) si ipotizzava che la causa di questa assenza fosse un porting non ancora completato del motore, ora è chiaro che lo State Machine non sarà supportato, almeno inizialmente. Infatti come spiegato in questa serie di documenti sulla migrazione da WF3 a WF4 con un modello di tipo Flowchart è possibile riprodurre il comportamento di uno State Machine.
Ovviamente, per quella che è la natura di .NET Framework, in .NET 4.0 sarà possibile avere comunque il supporto ai workflow definiti con il motore di .NET 3.0 e di WF3, come è spiegato anche qui, quindi non dobbiamo necessariamente buttare tutto il lavoro già svolto in WF3, soprattutto se abbiamo lavorato con le State Machine. Tuttavia è consigliabile iniziare a pensare ad un percorso di migrazione.