do more with less
news, esperienze, esempi da condividere e qualcosa su di me

mercoledì 26 dicembre 2007

Chiusura del mio blog su UGIdotNET: data di cancellazione decisa

Oggi mi sono sentito con l'amico Andrea Saltarello con il quale ho concordato la data di cancellazione del mio blog su UGIdotNET per il 4 gennaio 2008. Invito chi avesse nei suoi post link ai miei, presenti nel blog sopra menzionato, ad aggiornali (ogni post ha un'indicazione del nuovo url a cui puntare) prima della data indicata sopra. Dopo tale data il link risulterà broken ed un aggiornamento richiederà la ricerca di detto post nel mio nuovo blog.

Grazie ai ragazzi di UGIdotNET per l'ospitalità e la collaborazione in questa migrazione.

i'm making a difference

A marzo 2007 è stata lanciata questa iniziativa:

i'm is an initiative from Windows Live (TM) Messenger. Every time you start a conversation using i'm, Microsoft shares a portion of the program's advertising revenue with some of the world's most effective organizations dedicated to social causes. While there is no set cap on the amount each cause can receive, Microsoft will make a minimum $100,000 guaranteed donation to each of the nine organizations during the first year of the program. The more i'm (TM) conversations that happen, the more donations that happen. The sky's the limit.

So any time you have an i'm conversation using Windows Live Messenger, you help address the issues you feel most passionate about, including poverty, child protection, disease, and environmental degradation. All you have to do is join and start an instant messaging conversation. Microsoft handles the donation.

Visit http://im.live.com to join and get more information.

Al momento si contribuisce solo se si è negli USA e nel distretto di Columbia. A quasi un'anno dal suo lancio ancora non si hanno notizie su quando potremmo contribuire anche noi italiani. Fatevi sentire e sollevate il problema postando nei vostri blog ed inviando una mail a Administrator@im.Live.com (visto che la mail di feedback im_initiative@live.com non funziona), chiedendo che sia estesa l'iniziativa anche al nostro paese. 

Conto su tutti voi !

mercoledì 19 dicembre 2007

DELL Latitude XT finalmente un tablet pc dal mio produttore preferito

Sono anni che vorrei prendere un Tablet PC. Per motivi diversi mi sono sempre fermato e non ho mai proseguito con questo intento. La principale motivazione che mi faceva desistere, era l'assenza di un prodotto di questo tipo nel listino del mio produttore hardware di riferimento. Ora però anche questa barriera è stata rimossa. Da qualche mese sapevo che Dell sarebbe uscita con un Tablet PC ed oggi ho avuto il piacere di vedere che è stato ufficialmente rilasciato, anche per il mercato italiano, il Dell Latitude XT. Il prezzo è impegnativo, come tutti i tablet del resto; ma se optate per il noleggio, cosa che consiglio a tutti quelli che fanno la mia attività, il canone non è molto più alto rispetto ad un altro notebook della linea Latitude. Se sieti curiosi visitate il sito Dell: Latitude XT.

sabato 15 dicembre 2007

Disco.exe - The HTML document does not contain Web service discovery information

[Are you looking for an english version? Follow this link:  Cannot generate disco and wsdl file for MOSS custom web service to find it]

Sto continuando il mio lavoro con MOSS 2007 e come sempre la cosa mi fa tribolare. Questa volta però la responsabilità è mia e dipende probabilmente da un pò di stanchezza che mi ha portato ad essere disattento. Ma veniamo al problema.

Per creare un Web Service personalizzato per SharePoint, è necessario eseguire un certo numero di istruzioni come si può evincere da questa guida Walkthrough: Creating a Custom Web Service. Però mentre seguivo e adattavo le istruzioni al mio contesto, sono incappato in un errore che apparentemente non era risolvibile ed in rete non si trovavano soluzioni ma solo una serie di conferme che il problema si poteva riscontrare ma nessuna con la soluzione per risolverlo.

Come certamente saprete se l'avete usata, la direttiva @WebService ha un attributo Class che deve contenere queste informazioni:

  • Class - Fully Qualified Name (FQN) della classe

  • Assembly - FQN dell'Assembly che contiene la classe

  • Version - Versione dell'Assembly, per esempio 1.0.0.0

  • Culture - Cultura per cui è stato realizzato l'Assembly, normalmente neutral

  • Public key token - Token della chiave pubblica

La direttiva dovrebbe apparire tipo questa:

<%@ WebService Language="C#" Class="Knodev.Services.ServicesCore.MossService, Knodev.Services.ServicesCore,Version=1.0.0.0, Culture=neutral, PublicKeyToken=96cd654737929a49" %>

Il mio errore iniziale è stato questo:


<%@ WebService Language="C#" Class="Knodev.Services.ServicesCore, Version=1.0.0.0, Culture=neutral, PublicKeyToken=96cd654737929a49" %>

Notate la differenza? Nel secondo pezzo di codice manca il FQN della classe. Dopo aver speso un pò di tempo cercando e leggendo in rete come risolvere il problema evidenziato qui:



Microsoft (R) Web Services Discovery Utility
[Microsoft (R) .NET Framework, Version 2.0.50727.42]
Copyright (C) Microsoft Corporation. All rights reserved.
ERROR: http://test.knodev.com/MossService.asmx
  - The HTML document does not contain Web service discovery information.


senza trovare una soluzione; ho dovuto solo porre maggiore attenzione alle istruzioni che mi venivano fornite dal MOSS SDK su come si implementa un Web Service personalizzato per SharePoint.


Come potete vedere, qualche volta abbiamo bisogno di una pausa per risolvere problemi così sciocchi.

Bye Bye con Silverlight

Ieri sera Andrea Boschin ci ha intrattenuto parlando di Silverlight e di come poterlo applicare in soluzioni reali. La sessione è stata molto interessante ed Andrea si è superato in termini di organizzazione ed esposizione degli argomenti mettendo a frutto l'esperienza fatta come attendee al Tech.Ed Developer 2007 di Barcellona. Si è chiuso così il secondo semestre 2007 di eventi organizati dalla nostra community: XEdotNET. Il 2008 si annuncia ricco di novità ed inizierà in gennaio con il nostro primo evento di una giornata (per maggiori informazioni visitate il mini sito dedicato al ONE-Day Web Development) sponsorizzato da Microsoft Italia proseguendo poi con una serie di eventi mensili in cui continueremo a confrontarci sul mondo .NET. Come noto alla maggior parte dei nostri iscritti, il prossimo anno vedrà anche il debutto di una nuova location per i nostri meeting. Si tratta del Centro Congressi del Novotel di Venezia Mestre che potremmo affittare grazie ad aziende sponsor che, credendo nel lavoro del nostro gruppo, hanno deciso di investire per offrire un ambiente più confortevole a chi partecipa ai nostri incontri. Insomma, molte novità in arrivo che speriamo vi facciano piacere.

Colgo l'occasione per ringraziare quanti, partecipando agli eventi di quest'anno, hanno dimostrando di apprezzare i nostri sforzi per fare community.

giovedì 13 dicembre 2007

SharePoint 2007 Service Pack 1

Per chi ha la sventura di lavorare con MOSS 2007 e si sente frustrato dai limiti che questo prodotto impone alla creatività web, da qualche giorno può gioire dell'uscita della Service Pack 1 che sistema alcuni difetti dell'attuale versione oltre ad introdurre il supporto per ASP.NET AJAX. Per un esaustivo elenco dei link vi invito a leggere il post di Igor Macori che trovate a qui: SharePoint 2007 Service Pack 1: eccolo!. Aggiungo, per chi volesse sapere in dettaglio cosa cambia grazie alla SP1, il link all'area dedicata sul sito MSDN: What’s New in SharePoint Server 2007 Service Pack 1.

lunedì 10 dicembre 2007

4U - il portale Microsoft dedicato agli studenti

Volevo segnalare una lodevole iniziativa di Microsoft rivolta agli studenti, il portale 4U. Qui gli studenti potranno trovare le notizie relative alle ultime tecnologie, informazioni sugli eventi organizzati da Microsoft e anche un punto di accesso al mondo del lavoro per coloro che fossero interessati ad intraprendere una qualche carriera nel settore dell'information technology. Non poteva mancare una area dedicata alla parte ludica e di community; supporti quali template, gadget, software scaricabile e molto altro. Che aspettate, è tutto gratis !

martedì 4 dicembre 2007

Save the Children - Lista dei desideri, regali che fanno la differenza

Non ci pensiamo mai o quasi e quando lo facciamo spesso non ci soffermiamo abbastanza a riflettere. Durante le festività c'è chi ci aiuta a ricordarci dei bambini meno fortunati, quelli che non hanno nulla, proprio nulla. Non facciamoci scappare un'altra occasione per dare il giusto peso e valore alle cose che contano, aiutiamo l'associazione Save the Children aderendo all'iniziativa Lista dei desideri, regali che fanno la differenza.

Conto su di voi e sui vostri amici, aiutiamoli ad avere una vita da vivere.

sabato 1 dicembre 2007

SyntaxColor4Writer - il miglior plug-in per inserire codice

Per motivi diversi, sto pianificando di rifare il mio notebook. Per questo motivo ho pensato di annotarmi il nome del plug-in per Windows Live Writer che utilizzo per inserire codice nei miei post. Durante la fase di migrazione dal mio vecchio blog a questo, ho provato diversi tool integrabili su WLW ma solo questo mi ha realmente soddisfatto. Il suggerimento mi è arrivato dal solito Andrea Boschin al quale mi sono rivolto per capire se aveva i miei stessi problemi di renderizzazione. Da quando l'ho installato non mi angoscio più se devo inserire codice nel post che sto preparando. Ecco il link da non dimenticare: SyntaxColor4Writer.

venerdì 30 novembre 2007

ONE-Day Web Development - web site aggiornato

Ho appena terminato di aggiornare con una nuova funzionalità il mini sito dedicato all'evento che si terrà il 17 gennaio 2008. A seguire trovate qualche informazione e link che potrebbe tornarvi utile se decidete di partecipare e/o di darci una mano nella promozione.

ONE-Day Web Development mini site
Per questo evento abbiamo creato qualche pagina informativa e di utilità per quanti fossero interessati.

Benvenuto del Presidente
Andrea Boschin, presidente di XEdotNET ha ritenuto doveroso dare il benvenuto nel sito a quanti decidano di visitare il mini sito.

Agenda
In questa parte del sito è riportata l'agenda, completa di abstract e speaker, relativa alle sessioni previste durante la giornata dell'evento.

Registrati
Sezione che rimanda alla area dedicata alla registrazione presente sul sito di Microsoft Italia che continua a supportarci logisticamente per questa importante funzionalità.

Come raggiungerci
Non potevano mancare informazioni relative alla location scelta per l'evento. In quest'area avrete la possibilità di calcolare e verificare il percorso che dalla vostra città potrete percorrere per raggiungere la sede dell'evento.

Promuovi l'evento
Potevamo non fare appello al vostro senso di community per richiedervi un aiuto nella promozione di questa giornata? Assolutamente no. Ecco perchè in questa area trovate un classico generatore di banner che vi permetterà di promuovere il ONE-Day Web Development utilizzando il vostro sito web, o il vostro blog o semplicemente le vostre e-mail.

Ogni feedback in merito a quanto vedrete nel sito è ben accetto. Sarà nostra cura di analizzare attentamente le vostre segnalazioni e, se possibile, apportare i correttivi che rendano migliore l'esplorazione del mini sito.

Grazie per la collaborazione.

Crea la tua MSDN personalizzata con PackageThis!

Il team di sviluppo di MSDN ha creato un tool che permette di creare un file di help personalizzato partendo dai contenuti di MSDN Library e TechNet Library ed esportandolo in formato .chm o .hxs; si possono così ottenere degli ebook consultabili offline con funzionalità di ricerca per chiave o full text. Per poter funzionare correttamente, lo strumento richiede il .NET Framework 2.0, l'SDK per i file hxs (MSHelp 2.0 contenuto nel Visual Studio 2005 SDK) e quello per i file chm (HTML Help). Il tool è scaricabile dal sito codeples al seguente indirizzo: PackageThis!.

giovedì 29 novembre 2007

Visual Studio 2008 RTM: per chi non ha una sottoscrizione MSDN, Express o Trial?

In questi giorni ormai tutti sono stati informati dell'uscita di Visual Studio 2008 per chi ha una sottoscrizione MSDN. E gli altri? Nell'attesa del lancio ufficiale, si possono consolare installando una trial di 90 giorni. Ecco i link:

Ah quasi dimenticavo, ci sono sempre le versioni express. Scaricatele da questo link: Visual Studio 2008 Express Developer Center - Download.

Scott Guthrie: .NET Web Product Roadmap (ASP.NET, Silverlight, IIS7)

Scott Guthrie ha tracciato il percorso con le novità che ci aspettano relativamente allo sviluppo web basato su tecnologia .NET. Leggendo il contenuto del post si trovano conferme alle voci dell'ultimo periodo e alle CTP che qualcuno di noi magari ha già iniziato ad utilizzare. Ecco un breve estratto dal post: .NET Web Product Roadmap (ASP.NET, Silverlight, IIS7).

ASP.NET 3.5 Extensions

Release prevista per il prossimo anno. Tra i contenuti di questa futura release troveremo:

  • ASP.NET MVC
  • ASP.NET AJAX Improvements
  • ASP.NET Dynamic Data Support
  • ASP.NET Silverlight Support
  • ADO.NET Data Services

Per la prossima settimana è prevista la prima preview pubblica di queste estensioni.

Silverlight 2.0

Nuovo nome per l'ormai noto Silverlight 1.1. Il cambiamento nasce dal numero di funzionalità aggiunte che hanno fatto propendere per la definizione riservata alle major release. E' attesa per il prossimo anno ed includerà:

  • WPF UI Framework
  • Rich Controls
  • Rich Networking Support
  • Rich Base Class Library Support
  • Visual Studio 2008 tools update for Silverlight 2.0

Prima beta pubblica prevista per il primo quarto del 2008 con licenza Go-Live.

IIS 7.0

Come ormai noto, ad inizio del prossimo anno sarà rilasciato IIS 7.0 come parte di Windows Server 2008. Rappresenta una major release che aggiorna il web server Microsoft introducendo nuove e migliorate funzionalità per l'architettura dell'estendibilità, della configurazione e dell'amministrazione.

Per continuare ad essere aggiornati sull'argomento non vi resta che seguire il blog di Scott.

Grazie a Marco per il ping sull'argomento.

mercoledì 28 novembre 2007

Visual Studio 2008 issue - problemi di renderizzazione a design-time

Per sfruttare una delle nuove caratteristiche di Visual Studio 2008, la miglior renderizzazione a design-time, ho deciso di sviluppare un piccolo web site basato sul framework 2.0 utilizzando il nuovo IDE. Ho iniziato importando una master page da un precedente sito realizzato con la versione 2005. Purtroppo però qualsiasi controllo server ASP.NET che inserisco nella pagina non mi viene renderizzato a design-time ottenendo al suo posto una fastidiona rappresentazione. Il problema Method not found: 'Boolean System.Web.UI.Design.ViewRendering.get_Visible()' si presenta sia quando crea web site che quando creo web project; indipendentemente dal framework per cui voglio realizzare il sito o dal web server control che sto utilizzando. Sto indagando su come risolvere la cosa e appena ho maggiori notizie le condividerò con voi. Al momento ho chiesto supporto al team dei DPE italiani e ho aperto una segnalazione nel sito Microsoft Connect: Visual Studio 2008 Team Suite issue with ASP.NET designer nella speranza che qualcuno mi eviti soluzioni estreme.

Se nel frattempo qualcuno avesse già la soluzione mi risparmierebbe un bel pò di problemi.

sabato 24 novembre 2007

Sharepoint 2007 Ajax WebPart con Gaia

La mancanza di un design adeguato per lo sviluppo di web part per Sharepoint 2007 rende la ricera di soluzioni più evolute un MUST TO HAVE per qualsiasi sviluppatore. In un precedente post ho già indicato alcune soluzioni trovare in rete alle quali vorrei aggiungere quanto scoperto oggi: Ajax WebParts for SharePoint 2007 with Gaia 33 minute [Video]. Per chi non avesse già avuto modo di lavorare con i Gaia Ajax Widgets è necessaria una piccola introduzione. Gli Ajax Widgets rappresentano un'implementazione Ajax completamente basata su codice server side in grado di produrre quanto necessario per effettuare chiamata asincrone da pagine ASP.NET. Il componente include un set di controlli molto ricco che permette di disegnare rapidamente pagine con comportamenti AJAX senza dover scrivere una riga di codice client side in javascript. Interessante no? Per saperne di più visitate il sito raggiungibile dal link indicato sopra. Ma torniamo alla parte relativa a Sharepoint. Utilizzando un approccio tradizionale o con UserControl ed utilizzando i widgets di Gaia, si possono costruire web part Ajax enabled in pochissimo tempo. Se lavorate con Sharepoint non potete non prendere in considerazione anche questa soluzione. Meditate SharePoint Developer meditate.

Plaxo sincronizza calendario, contatti, attività e note

Un amico di vecchia data oggi mi ha inviatato ad iscrivermi a Plaxo. Appena ho letto la mail ho pensato: "no un'altro sito di social networking, basta!". Poi ho deciso comunque di darci un'occhiata e alla fine mi sono registrato. L'interfaccia è molto carina e ben fatta e soprattutto ha un engine di sincronizzazione per le seguenti piattaforme/programmi:

  • Outlook
  • Yahoo
  • AOL/AIM
  • Plaxo for Mobile
  • Outlook Express
  • Google
  • LinkedIn
  • Mobile Access
  • Mac OS X
  • MSN Hotmail/Windows Live
  • Windows Mail

Sincronizzatore che è in grado di sincronizzare tutte le fonti dati selezionate in modo automatico. Comodo non credete? Per il momento io mi sono limitato ad esplorarne le funzionalità ma magari con il tempo mi deciderò anche ad usarlo.

venerdì 23 novembre 2007

.NET Framework 3.5 e VS 2008: la Raf compilation!

Si proprio così, ieri mattina è uscita la Raf compilation AKA "Il Bignami del .NET Framework 3.5". Annunciata nel suo blog con il titolo: Ma che c'è di nuovo nel Framework 3.5 e in VS2008?. Questo è un perfetto esempio del mio motto preferito: do more with less: Raffaele Rialdi seleziona ed io leggo.

Webpart per MOSS 2007

Sono sicuramente prevenuto nei confronti di prodotti come Microsoft Office Sharepoint Server che costringono lo sviluppatore entro limiti spesso troppo stringenti. Ci sono volte, però, in cui non posso evitare di interagire con MOSS e quindi mi devo scontrare con i limiti imposti allo sviluppo di soluzioni basate su questo prodotto. In questo periodo sono coinvolto in un progetto in cui mi si richiede lo sviluppo di webpart da integrare in un sito di sharepoint. Potete immaginare la mia frustrazione quando ho scoperto come si dovrebbero creare le webpart per le pagine del sito. Non mi sono però scoraggiato e da buon lazy developer quale sono ho iniziato a cercare in rete se esistese un modo più intelligente di fare lo stesso lavoro. Con mia grande sorpresa e soddisfazione, grazie ad un post di Gabriele Del Giovine che mia ha indicato la giusta direzione, ho trovato (vedi link sotto) come poter utilizzare l'approcio per creare User Control ASP.NET anche nella predisposizione di webpart per MOSS 2007. Ecco alcuni link utili a chi come me soffre l'arretratezza degli strumenti di sviluppo per sharepoint e che vuole risparmiare tempo:

Quando non abbiamo scelta, almeno facciamolo con stile ;-)

mercoledì 21 novembre 2007

XEdotNET: prime indiscrezioni sull'evento di gennaio

Il nostro presidente, Andrea Boschin, non poteva trattenersi ancora a lungo ed ha rotto gli indugi informando la community sul primo evento di una giornata che XEdotNET sta organizzando con il vitale supporto di Microsoft Italia. In questo post, Andrea illustra i contenuti principali di una giornata che spenderemo parlando dello sviluppo web utilizzando Visual Studio 2008, AJAX, Silverlight e Windows Live ID. Non posso che darvi appuntamento ai prossimi post in cui saremo in grado di fornirvi anche il link per la registrazione. Per il momento fissate l'agenda, il 17 gennaio 2008 abbiamo bisogno di tutti voi. Non perdiamo l'occasione per incontrarci e per spostare, almeno questa volta, il baricentro degli eventi community verso il Nord-est dell'Italia.

Qual'è l'ultima versione di ASP.NET dopo il rilascio di Visual Studio 2008?

Probabilmente vi sarete posti questa domanda se avete cercato di configurare, in IIS 7.0, un'ipotetica versione 3.5 di ASP.NET. In realtà, il framework 3.5 non è una release completa come la 2.0 e tecnicamente non incrementa il numero di versione di ASP.NET sebbene fissi alcuni bugs e introduca funzionalità built-in come ASP.NET AJAX Extension e il supporto per LINQ. Quindi, anche dopo l'installazione del Microsoft .NET Framework 3.5, la situazione sarà la seguente:

  • Non troverete una release ASP.NET 3.5 elencata nella finestra di configurazione di ASP.NET all'interno di IIS. L'application pools continuerà ad essere configurato per eseguire ASP.NET 2.0.50727.
  • Se avete bisogno di eseguire aspnet_regiis o uno degli altri tool di ASP.NET, dovrete continuare ad eseguirli dalla cartella della versione 2.0.50727 (normalmente C:\Windows\Microsoft.NET\Framework\v2.0.50727).
  • Per poter utilizzare le estensioni di AJAX e il nuovo controllo LinqDataSource in Visual Studio o Visual Web Developer 2008, dovrete configurare il vostro progetto per utilizzare il .NET Framework 3.5.
  • Le pagine di errore ASP.NET, ad eccezione di quelle personalizzate da noi, visualizzeranno ancora la 2.0.50727.xxxx come versione di ASP.NET.
  • Le mappature in IIS continueranno ad essere mappate alla versione 2.0.50727.xxxx della aspnet_isapi.dll

Per un approfondimento su questo argomento potete leggere, dal blog di Jim Cheshire, il post "ASP.NET Version Madness".

lunedì 19 novembre 2007

Visual Studio Team System 2008 Team Suite

Stavo cercando una Virtual Machine tra i download della mia sottoscrizione MSDN quando mi sono accorto che era disponibile il download di Visual Studio Team System 2008 Team Suite. Quindi direi che ci siamo, quanto promesso dal Corporate Vice President di Microsoft S. Somasegar durante l'ultimo Tech.Ed Developer di Barcellona è realtà: la RTM di Visual Studio 2008 è disponibile per gli MSDN Subscriber !

giovedì 15 novembre 2007

I 3 tempi dell'ultimo meeting di XEdotNET

Questa sera si è tenuto un Community Meeting di XEdotNET. Le sessioni sono state tenune da Davide Senatore e Andrea Dottor. Davide ci ha parlato di DotNetNuke illustrando le potenzialità di questo strumento per creare portali mentre Andrea ha fatto una panoramica delle ASP.NET AJAX Futures evidenziando quali potrebbero essere le funzionalità presenti nelle prossime versioni di ASP.NET AJAX.
Al termine dell'incontro si è passati all'ormai consueto 3° tempo allo "Scarpon", pub in cui abitualmente concludiamo la serata dopo questi eventi.

venerdì 9 novembre 2007

Tech.Ed 2007 - Matt Gibbs presents ASP.NET MVC Framework

Ho seguito la sessione interattiva di Matt Gibbs sull'ASP.NET MVC Framework. Matt ha subito precisato che MVC non è un'invenzione Microsoft ma bensì l'implementazione che Microsoft ha pensato basandosi su questo pattern architetturale. Incuriosito da questa sua iniziale precisazione sono andato a vedere la descrizione che viene fornita su wikipedia.org. Ecco l'abstract che ho trovato:

"Model-view-controller (MVC) is an architectural pattern used in software engineering. In complex computer applications that present a large amount of data to the user, a developer often wishes to separate data (model) and user interface (view) concerns, so that changes to the user interface will not affect data handling, and that the data can be reorganized without changing the user interface. The model-view-controller solves this problem by decoupling data access and business logic from data presentation and user interaction, by introducing an intermediate component: the controller."

Sebbene con tecniche diverse, i concetti riassunti dalla descrizione di wikipedia.org, sono spesso utilizzati nelle attuali applicazioni web anche se non con un utilizzo rigoroso di questo pattern. E qui entra in gioco quanto ha presentato Matt Gibbs, ossia l'ASP.NET MVC Framework. Prima di questa sessione ammetto di aver avuto non pochi dubbi su questo framework; dubbi chiariti durante la sessione di Q&A che ha seguito la presentazione. Riassumendo ecco alcune delle informazioni fornite:

  • ASP.NET MVC framework dovrebbe essere rilasciato in CTP tra qualche settimana (si attende a breve un post di Scott Ghuttrie con maggiori informazioni);
  • Al momento richiede il compilatore per C# 3.0 e di conseguenza il .NET framework 3.5 ma dovrebbe essere rilasciata anche una versione per il .NET Framework 2.0;
  • La prima release non supporterà ASP.NET AJAX ma ovviamente non impedisce l'utilizzo di implementazioni AJAX non Microsoft;
  • Lo si deve vedere come un sistema alternativo alle ASP.NET WebForm e non come un modello sostitutivo. L'attuale pianificazione prevede il supporto per entrambi i modelli di pagina;
  • Faciliterà il Test Driven Development (TDD) per le applicazioni ASP.NET;
  • Introduce una nuova costruzione degli URL per la navigazione dell'applicazione basati sul concetto si Controller/Action/Parameters

Molto altro ci sarebbe da dire ma spero in futuro di avere il tempo di approfondire questo framework per postare esperienze dirette più che riportare concetti sentiti durante una sessione. E' certo per il momento che in assenza di un set di controlli per questo modello di pagine ASP.NET (controlli che arriveranno in seguito), dovremmo lavorare molto nel creare i nostri controlli bindabili e nella renderizzazione delle view il che mi ricorda la programmazione in ASP Classic. Qualcuno ritiene questo un plus del modello in quanto fornisce un controllo granulare sulla renderizzazione finale ma io mi chiedo, dopo essere stato così ben abituato dai controlli server side di ASP.NET: "Si può far provare una Ferrari a qualcuno e poi mandarlo via in bicicletta?". Stiamo a vedere come evolveranno le cose. Le impressioni che ho avuto sono positive proprio per l'elevato livello di separazione che questo pattern fornisce ma ritengo che al momento sia lontano dall'essere un reale modello alternativo allo sviluppo di applicazioni ASP.NET; in quanto aumenta notevolmente i tempi di sviluppo dell'interfaccia grafica.

giovedì 8 novembre 2007

Il blog del team MSDN Italia: cool !

Da qualche giorno è online il nuovo blog del team MSDN Italia da dove sarà possibile essere informati sulle iniziative, sulle tecnologie e quant'altro il team italiano vorrà condividere con tutta la community. Ottima scelta ragazzi e in bocca al lupo per il vostro blog.

ASP.NET GIS Provider: pubblicato il mio articolo sul sito MSDN Italia

La newsletter MSDN Flash - 8 novembre 2007 riporta i link al mio articolo in cui parlo di come creare un GIS Provider per ASP.NET. Se siete interessati a questo argomento non manacate di leggere l'articolo che trovate qui.

martedì 6 novembre 2007

2D Barcode: QR Code Generator e QuickMark Mobile

Continuo a stupirmi per i progressi che anno dopo anno vengono fatti dalla tecnologia. Qualche tempo fa ho lavorato in un progetto che richiedeva la gestione dei codici a barre per un prodotto destinato alla gestione dello stoccaggio di merci. In quel progetto, utilizzando un componente di terze parti, ero riuscito facilmente ad integrare la produzione/lettura dei codici nella mia applicazione. Dopo quell'esperienza non avevo avuto più modo di lavorare su progetti che richiedessero la gestione di codice a barre e quindi non avevo più approfondito l'argomento fino ad oggi. Durante una chiaccherata con Miguel Jiménez Antelo, MVP Spagnolo su C#, ho scoperto un sistema di generazione e lettura di 2D Barcode che mi ha lasciato a bocca aperta. Dal sito Kaywa QR-Code, è possibile generare un'immagine del codice bidimensionale che contiene le informazioni che scegliete di inserire. Beh e cosa c'è di così straordinario? C'è che avendo un telefonino dotato di fotocamera potete installare QuickMark Mobile, in grado di leggere il 2D Barcode e di tradurlo in testo. L'applicazione non si limita alla traduzione ma è anche in grado di riconoscere alcune tipologie di informazione fornendovi delle funzionalità aggiuntive come: chiama numero in presenza di un numero di telefono, naviga URL, ecc).

Tech.Ed: primo giorno al booth di ASP.NET

Oggi pomeriggio è toccato a me. Alle 13 ho iniziato il supporto al booth di ASP.NET all'interno dell'area Ask The Expert (ATE). Poche domande ma molte chiaccherate interessati e nuove conoscenze. In particolare Matt Gibbs Microsoft Development Manager di ASP.NET, ASP.NET AJAX, Silverlight 1.1 e ASP.NET MVC Framework con il quale abbiamo parlato di AJAX e dei tempi di rialscio dell'ASP.NET MVC framework. Matt è stato molto disponibile e spero che questo sia il primo di molti contatti che mi permettano di essere maggiormente aggiornato su come evolve la mia tecnologia di riferimento.

lunedì 5 novembre 2007

Tech.Ed 2007: RTM di Visual Studio 2008 entro fine novembre

Durante la Key note di apertura del Tech.Ed Developer 2007, il Corporate Vice President di Microsoft, S. Somasegar, promette che entro la fine di novembre sarà disponibile la RTM di Visual Studio 2008. Il download sarà a disposizione di tutti gli MSDN Subscriber. Quindi preparatevi, si cambia.

Tech.Ed 2007: MS Influencers Community Camp

Formato inedito per il Microsoft Influencer Community Camp. Un insieme di round table su argomenti proposti dai partecipanti alle quali si era liberi di partecipare alla discussione o passare ad una all'altra qualora lo si desiderasse. Personalmente ho seguito solo le discussioni su due argomenti:

  • Come incrementare i partecipanti durante i meeting organizzati dalle community;
  • Come coinvolgere i partecipanti ad una community in modo da renderli pro-attivi.

Da queste discussioni sono emersi problemi comuni e si è cercato di evidenziare le singole esperienze per definire eventuali strategie di intervento. Resta il fatto che, non solo per l'Italia, l'utente è più propenso a consumare che a produrre rendendo di fatto le community l'espressione del lavoro di pochi volenterosi.

L'esperienza si è dimostrata più interessante di quanto mi aspettassi e penso valga la pena di farlo anche in futuro se si presenterà l'occasione.

domenica 4 novembre 2007

Tech.Ed 2007: MCT Dinner

Arrivato al Tech.Ed, effettuata la registrazione e via ad incontrare gli altri amici presenti a questo evento. Dopo una giornata passata a gironzolare per Barcelona e il consueto meeting preparatorio per l'Ask The Expert; ci siamo imbucati alla cena per gli MCT organizzata da Ronald Beekelaar in un ristorantino al porto olimpico. Questo mi ha dato modo di incontrare Lynnl Langit (MSDN Developer Evangelist) ed Anton Delsink (Microsoft Developer Tools Technology Specialist) con i quali abbiamo a lungo discusso su come si potrebbero migliorare gli strumenti di sviluppo e ad alcuni prodotti Microsoft per essere più aderenti alle esigenze di mercati particolari come quello italiano. Conversazione interessante ricca di spunti e suggerimenti, che mi ha permesso di instaurare nuovi contatti con persone che difficilmente avrei potuto conoscere al di fuori di questa cena. In poche parole, soldi ben spesi.

sabato 3 novembre 2007

Migrazione in corso...

Non pensavo mi ci volesse così tanto per spostare i miei quattro post. Sono ancora alle prese con l'aggiornamento dei vari link e delle immagini ma spero di non incontrare altri problemi. Per il momento mi sto dedicando ad aggiornare i vari puntatori esterni come Technorati, FeedBurner, ecc... Mi devo sbrigare visto che tra qualche ora ho l'aereo che mi porterà a Barcellona per partecipare al Tech.Ed Developer 2007. Non vorrei essere ancora davanti al PC quando suona la sveglia.

Technorati Profile

mercoledì 10 ottobre 2007

Perchè installare Windows Vista? Ecco 100 motivi

Nell'ultima newsletter Microsoft di "Exploring Windows" ho trovato un link interessante ai 100 motivi che giustificano l'installazione di Windows Vista. La mia prima reazione è stata di stupore per un numero così elevato di motivi. Pensando però a quante critiche ha sollevato questo nuovo sistema operativo, ho iniziato a curiosare e devo dire che con questo elenco dettagliato anche i più scettici troveranno risposte convincenti.

Per saperne di più: 100 Reasons You'll Be Speechless .

mercoledì 3 ottobre 2007

BlogEngine.NET: rilasciata la versione 1.2

E' un pò di tempo che vorrei cambiare il mio blog. Nei mesi passati ho valutato diverse soluzioni ma nessuna mi aveva convinto abbastanza da farmi decidere a migrare il mio blog. Nel frattempo le cose sono cambiate, ho scoperto un engine adatto alle mie limitate esigenze e in grado di garantirmi una rapida implementazione di un mio blog senza dover sottostare a troppe regole e restrizioni. Sto parlando di BlogEngine.NET che con la sua ultima release garantisce funzionalità tipiche dei più evoluti motori di gestione di blog. Ora non mi resta che predisporre il tutto per la migrazione e vedere come va.

Se siete interessati a saperne di più su questo motore di blog, cliccate qui: BlogEngine.NET 1.2

mercoledì 18 luglio 2007

Dare una mano al Garbage Collector

Qualche tempo fa sono stato chiamato per aiutare un team di sviluppo a risolvere un problema su un'applicazione web che faceva uso dei Web Services di SharePoint. Il problema che il team riscontrava, in ambiente di produzione, nasceva in modo apparentemente random e rendeva la soluzione inutilizzabile in quanto bloccava IIS e richiedeva un reset dello stesso o, nei casi più fortunati, della sola applicazione.
Indagando con i ragazzi che avevano scritto il codice, abbiamo scoperto che il problema risiedeva nel mancato rilascio delle risorse che i Web Services di SharePoint richiedevano. E' bastato adottare la giusta politica di rilascio delle risorse e il problema è rientrato.

Ma perchè sto parlando di questo? Semplicemente perchè a volte, viziati dai molti automatismi che il framework ci mette a disposizione, ci dimentichiamo che il Garbage Collector non può fare miracoli e soprattutto non è in grado di deallocare memoria per risorse su cui non ha il controllo. Ma allora come si possono evitare questi problemi. La risposta è palese, con una corretta programmazione e quindi utilizzando gli eventuali metodi di Dispose o Close che gli oggetti ci mettono a disposizione. Certo questo presuppone che chi implementa gli oggetti, che utilizziamo nella nostra soluzione, esponga i metodi corretti per il rilascio delle risorse (nel caso dei servizi di SharePoint i metodi c'erano ma non erano stati utilizzati) e che noi ci impegnamo ad usare le tecniche migliori per garantire il rilascio delle risorse managed e non.
Un primo passo può essere quello di utilizzare lo statement using per tutti gli oggetti che implementano l'interfaccia IDisposable in modo da sfruttare il rilascio delle risorse al termine dell 'utilizzo delle stesse. Per esempio, ipotizzando di avere una classe MyClass che implementa l'interfaccia IDisposable, potremmo scrivere:

using (MyClass myClass = GetMyClass())
{
myClass.DoSomething();
}

Ed all'interno della nostra classe, quale potrebbe essere il sistema migliore per implementare questa interfaccia? Potremmo adottare il Disposable Pattern così come indicato nell'articolo CLR Inside Out: Digging Into IDisposable di Shawn Farkas pubblicato su MSDN Magazine nel numero di Luglio 2007. Questo articolo aiuta a capire come utilizzare in modo appropriato le tecniche di rilascio delle risorse per evitare i comuni errori che si possono commettere in questi casi. Il risultato della disamina presentata nell'articolo è il seguente pattern:


public class DisposableClass : IDisposable
{
~DisposableClass()
{
Dispose(false);
}
public void Dispose()
{
Dispose(true);
GC.SuppressFinalize(this);
}
protected virtual void Dispose(bool disposing)
{
if (disposing)
{ //Pulizia di tutte le risorse gestite }
//Pulizia di tutte le risorse native
}
}

 


Buona lettura e occhio alle risorse ;-)

giovedì 5 luglio 2007

Adobe Photoshop CS3: trial installation issue on Windows Vista

Tanto per restare allenati ecco un'altro problema di installazione che ho riscontrato tentando di installare la versione trial di Adobe Photoshop CS3 Extended. Lanciando il file setup.exe, ottenevo il seguente messaggio di errore:

Internal Error 2739

Cercando qua e là ho trovato la soluzione sul forum di Adobe. In sostanza si deve:

  • avviare il command prompt come amministratore
  • eseguire regsvr32 jscript.dll
  • avviare il setup.exe di Photoshop CS3 e tutto funziona.

domenica 1 luglio 2007

Un amico felice...

Oggi Andrea Boschin è stato premiato come Microsoft MVP sulla tecnologia ASP/ASP.NET. Penso che si meriti questo riconoscimento e sono realmente contento di saperlo felice per questo. Congratulazioni Andrea !

venerdì 29 giugno 2007

Community Meeting: ASP.NET AJAX - last call !

Se questa sera siete dalle parti di Venezia, ed avete voglia di passare una serata tra amici parlando di ASP.NET AJAX, non perdetevi il Community Meeting organizzato da XEdotNET.org. Insieme all'amico Andrea Dottor chiacchereremo di ASP.NET AJAX e vedremo come sia possibile modificare un'applicazione web esistente affinché sfrutti tutte le caratteristiche offerte da questa nuova libreria.

Al termine dell'incontro ci trasferiremo, come di consueto, alla birreria "Scarpon" per uno spuntino ed una birra in compagnia. Vi aspettiamo.

Per maggiori informazioni e registrazioni cliccate qui.

mercoledì 27 giugno 2007

Lavorare in europa: un'alternativa da valutare

Sono un pò stanco della staticità del mercato del lavoro nel nostro paese. I progetti sono quasi tutti dello stesso tipo, le offerte che ricevo sono sempre per progetti simili ed inizio ad annoiarmi. Ho quindi pensato di allargare gli orizzonti e vedere cosa offre la vecchia europa. Ieri sera ho aggiornato il mio profilo in monster.it rendendo pubblico il mio curriculum in inglese e selezionando alcuni paesi in cui non mi dispiacerebbe fare un'esperienza di lavoro. Il risultato iniziale è confortante. Senza rispondere ad alcuna offerta di lavoro, il mio CV è già stato visto 18 volte nelle ultime 12 ore (lo stesso CV in italiano era stato visto solo 62 volte in 4 anni) ed ho già ricevuto via e-mail 2 proposte. Forse questa è la volta buona per spiccare il volo (lavorativamente parlando) e lasciare il paese dell'immobilismo. L'unico vero problema è staccarmi dalla mia famiglia in particolare dalla mia bimba. Vorrà dire che continuerò a fare il frequent flyer.

martedì 26 giugno 2007

Debugger.Log: un aiuto dimenticato.... almeno da me

Sto impazzendo con un'implementazione di AJAX ma questo è nella norma in questo periodo. Comunque, cercando come venire fuori dal mio problema, ho rispolverato un metodo che non usavo da tempo, il System.Diagnostics.Debugger.Log che permette di loggare, nella finestra di output, delle informazioni personalizzate. Si certamente si possono usare sistemi più potenti offerti dal framework e da Visual Studio ma questo si inserisce in un secondo e può risultare utile per visualizzare rapidamente i valori di proprietà e controlli utilizzati nel codice. Per utilizzarlo basta inserire una riga di codice come questa:

System.Diagnostics.Debugger.Log(level, category, message);

I parametri del metodo sono:

level = un intero che indica la priorità del messaggio di log
category = una stringa che rappresenta la categoria
message = una stringa contenente il messaggio da loggare.

venerdì 15 giugno 2007

Error connecting to undo manager of source file...

Uso Visual Studio 2005 ormai da un bel pezzo ma non ero mai incappato in questo errore avviando il debug (F5). Ci ho sbattuto la testa per un buon quarto d'ora cercando e leggendo post un pò ovunque. Alla fine ho trovato il mio workaround ed ho risolto. Come? Ecco gli step che per me hanno funzionato:

  1. cancellazione del file che mi creava il problema in compilazione;
  2. clean e rebuild del progetto
  3. creazione di un file identico (stessi controlli e nomi)
  4. F5

Il problema non si è più ripresentato (almeno nel progetto su cui sto lavorando). Per completare l'informazione, sto utilizzando:

  • Visual Studio 2005 Team Suite;
  • Windows Vista Ultimate;
  • Il file incriminato era il designer.cs di un controllo .ascx;
  • Lo user control era contenuto in un ContentPlaceHolder di un ContentPage;
  • L'implementazione del controllo prevede il binding di un XmlDataSource, che consuma un xml interno all'applicazione, con una DataList.

Tutto qui.

ASP.NET AJAX 1.0: disponibili slide e codice di tutti i webcast

Con il webcast di oggi si è chiuso il percorso formativo dedicato ad ASP.NET AJAX 1.0. Per chi fosse interessato, nell'area di download del mio sito, sono disponibili tutte le slide ed il codice di esempio.
Ecco il link:

giovedì 14 giugno 2007

ASP.NET 1.0 AJAX: Extending ASP.NET AJAX

Siete tornati da pranzo e non sapete cosa fare? Bene, ho la soluzione per voi. Tra 15 minuti inizia l'ultimo webcast della serie dedicata ad ASP.NET AJAX 1.0. Vi aspetto. Se volete registrarvi cliccate qui.

mercoledì 6 giugno 2007

Microsoft Surface

Ne avevo sentito parlare ma non avevo mai visto cosa potesse fare. Sono rimasto a bocca aperta (lo sono tutt'ora). Leggendo il blog di Alessandro Teglia ho letto di questo prodotto e mi sono incuriosito. Volete farvi stupire? Allora cliccate qui: Microsoft Surface

domenica 3 giugno 2007

Visual Studio Template: Custom Provider

Per motivi diversi, in questo periodo sto creando alcuni provider. Nelle mie implementazioni sono partito dal Code Template for Building a Provider-Based Feature che fornisce uno scheletro riutilizzabile per costruire un provider. Purtroppo questo non è un template di Visual Studio 2005 ma un insieme di file riutilizzabili che, di volta in volta, vanno personalizzati a suon di Find & Replace. Ho pensato, partendo da questo scheletro di file, di creare un template per Visual Studio che permettesse di saltare la fase di editing iniziale. Se ritenente possa esservi utile, potete scaricarlo da qui (ProviderTemplate.zip).

Note per l'utilizzo

  • Il file ProviderTempalte.zip scaricato, va copiato nella directory dei template di Visual C#  indicata in Visual Studio 2005. Normalmente questa directory è: C:\...\Documents\Visual Studio 2005\Templates\ProjectTemplates\Visual C#.
  • Il nome del progetto determinerà:
    • il namespace di default;
    • il nome del provider e la customizzazione della collection, del manager e della sezione di configurazione. E' quindi consigliabile non utilizzare la parola provider nel nome del progetto per evitare una noiosa ridondanza.
  • Il progetto creato contiene anche un esempio di configurazione che potrà essere usato come spunto per il file di configurazione dell'applicazione che utilizzerà il provider.

giovedì 3 maggio 2007

Fiddler2: problema di mancato monitoraggio del traffico Http locale

Sto preparando alcune demo per il webcast di questo pomeriggio e scopro che Fiddler2 non mi funziona su localhost in Windows Vista con IE7. Cercando in rete ho, per fortuna, risolto il problema. Ecco il link al post che mi ha salvato: Fiddler2 and the ASP.NET Development server (Cassini)

ASP.NET 2.0 AJAX 1.0: Client Scripting, Debugging and Tracing

Oggi alle 14.30 è la volta del quarto webcast del percorso formativo su ASP.NET AJAX. Tratteremo argomenti  come l'estensione di Javascript,  il debug e il trace di un'applicazione costruita con ASP.NET AJAX.

Se siete interessati ecco il link per l'iscrizione: ASP.NET 2.0 AJAX: Client Scripting, Debugging and Tracing (Livello 200)

mercoledì 2 maggio 2007

Microsoft Support Lifecycle

Oggi ho ricevuto una newsletter da Microsoft in cui sono presenti informazioni sullo stato di supporto di molti prodotti che con il tempo verranno "dismessi" in termini di supporto diretto. Leggendola pensavo che questo tipo di informazione a volte può aiutarci nello sponsorizzare i suggerimenti di cambiamento che diamo ad alcuni nostri clienti, ancorati al passato, che non vogliono migrare i loro sistemi o cambiare i loro strumenti di sviluppo. Se volete approfondire l'argomento: Microsoft Support Lifecycle.

giovedì 26 aprile 2007

mail2web.com: offerta di servizi gratuiti

Cercando un hosting in grado di fornire un account Exchange a costi contenuti (vorrei sfruttare il mio Samsung i600), ho trovato un provider mail2web che offre servizi free di elevato contenuto aggiunto tra i quali un account free di posta elettronica basata su Microsoft Exchange 2003. Qualcuno può pensare che si limiti all'accesso OWA ma in realtà è possibile anche sincronizzare posta, contatti, attività, ecc direttamente da Smartphone e Palmari basati su Windows Mobile 5.0 o versione precedente.

Ovviamente offre anche servizi professionali a pagamento ed un interessante calcolatore per confrontare i costi in house dai costi di una soluzione in outsourcing demandata a loro.

Sono tentato anche se mi dispiacerebbe lasciare google/apps :-(

domenica 22 aprile 2007

ASP.NET 2.0 AJAX 1.0: Control Toolkit- slide e demo disponibili per il download

 

Per chi fosse interessato, ho rilasciato le slide e l'applicazione di esempio del terzo webcast della serie dedicata ad ASP.NET AJAX 1.0. Per scaricarle cliccare sui link seguenti:

Vi aspetto il 2 maggio alle 14.30 per il quarto webcast per parlare di ASP.NET 2.0 AJAX: Client Scripting, Debugging and Tracing.

giovedì 19 aprile 2007

Microsoft Web Development Learning Series

Sul sito MSDN ho trovato una buona opportunità di formazione per chi vuole esplorare le caratteristiche di ASP.NET 2.0. Oltre alla serie dedicata a chi già proviene da versioni precedenti di ASP.NET, ci sono tre serie dedicate a chi ha esperienze in altri linguaggi come PHP, JSP e Cold Fusion. Completando almeno due webcast o Virtual Labs è possibile ottenere in omaggio, in funzione della track seguita, quanto segue:

  • Microsoft Visual Web Developer 2005 Express Edition (download)
  • Selected e-chapters from over 5 books focused on Web development, including Microsoft ASP.NET 2.0 Step by Step by George Shepherd (download)
  • A seat in a new 3-hour e-learning clinic and workshop, created especially for PHP developers, specifically for this Learning Series

Per maggiori informazioni si veda questo link: Link to Microsoft Web Development Learning Series

mercoledì 18 aprile 2007

ASP.NET 2.0 AJAX 1.0: Server Controls - slide e demo disponibili per il download


Per chi fosse interessato, ho rilasciato le slide e l'applicazione di esempio del secondo webcast della serie dedicata ad ASP.NET AJAX 1.0. Chi volesse scaricarle può scegliere la versione dall'elenco seguente:
Vi ricordo che potete influenzare i contenuti dei prossimi webcast inviando i vostri suggerimenti o le vostre richieste a questo indirizzo webcast@knodev.com indicando, nell'oggetto, il titolo del webcast pertinente per il vostro suggerimento.

Microsoft Silverlight (aka WPF/e)

Ormai molti lo sapranno già, WPF/e è ora ufficialmente Microsoft Silverlight. Prepariamoci al suo lancio ed alle sue funzionalità scaricando il Silverlight SDK CTP.
Buono studio ;-)

giovedì 5 aprile 2007

ore 11 - ASP.NET AJAX 1.0: Server Controls

Un piccolo promemoria per chi non sa come impegnare 90 minuti della sua mattinata. Oggi, alle 11, è possibile seguire in diretta il secondo webcast su ASP.NET AJAX 1.0, dedicato ai controlli lato server che vengono installati con le estensioni di AJAX per ASP.NET. Se volete iscrivervi per partecipare fate un salto qui.

martedì 3 aprile 2007

Visual Studio Team System Survey: ora tocca a noi!

Cosa c'è di meglio di un sondaggio per indicare il nostro grado di soddisfazione per un prodotto? Se volete far conoscere la vostra opinione al team del prodotto, con lo scopo di influenzare la qualità futura, non mancante di compilare questa questionario: Visual Studio Team System.

domenica 1 aprile 2007

MVP Award: ricevere la notizia il 1 aprile...

La tradizione vuole che la giornata odierna sia dedicata a scherzi di ogni sorta. Quindi, per abitudine, siamo normalmente portati a valutare attentamente ogni informazione che riceviamo in questa giornata. Aprendo il mio outlook, questa mattina, ho notato una mail che iniziava con "Congratulazioni [MVP] Le è stata conferita la qualifica di MVP Microsoft...". Al momento, non ricordadomi che oggi fosse il primo aprile, ho reagito come potete immaginare; poi mi sono detto: -" ma oggi è il 1° aprile...." e qualche dubbio ha fatto capolino nella mia mente. Dubbi però subito fugati dopo che ho svolto i consueti adempimenti burocratici per confermare la mia volontà ad accettare tale premio.
Inutile dire che ricevere questo riconoscimento per la quinta volta è per me un onore ed un piacere che difficilmente riesco ad esprimere. Avere nuovamente la possibilità di continuare questa stupenda esperienza mi da la carica per affrontare con rinnovato entusiasmo il mio lavoro quotidiano.
Se volete saperne di più sul programma Microsoft MVP, fate un salto qui.

ASP.NET 2.0 AJAX: Getting Started - slide disponibili per il download


Con un pò di ritardo rispetto a quanto promesso, ho rilasciato le slide del primo webcast della serie dedicata ad ASP.NET AJAX 1.0. Chi volesse scaricarle può scegliere la versione dall'elenco seguente:
Vi ricordo, come detto durante il webcast, che potete influenzare i contenuti dei prossimi webcast inviando i vostri suggerimenti o le vostre richieste a questo indirizzo webcast@knodev.com indicando, nell'oggetto, il titolo del webcast pertinente per il vostro suggerimento.

sabato 31 marzo 2007

Microsoft@school: "Apprendere in rete" un'esperienza da ripetere

Recentemente Microsoft mi ha dato l'opportunità di partecipare, come relatore, ad un evento di "Apprendere in rete" organizzato per fornire un'opportunità di formazione gratuita a studenti ed insegnanti. Ieri ho passato la giornata all' ITIS "Ludovico Geymonat" di Tradate (VA) illustrando le peculiarità di ASP.NET e Visual Studio 2005. La giornata organizzata in due distinti eventi, il primo per gli studenti ed il secondo per i docenti, mi ha dato l'opportunità di relazionarmi con un mondo, quello delle scuole medie superiori, che normalmente non ho il piacere di frequentare durante le mie attività formative o di lavoro.
Ritengo queste iniziative molto importanti perchè offrono l'opportunità agli studenti di prendere contatto con il mondo lavorativo che gli attende al termine del loro ciclo di studi, potendo così valutare alternative per il loro futuro; ed ai docenti di "aggiornarsi" sulle tecnologie presenti sul mercato informatico.
L'interesse dimostrato dai partecipanti è stato tale da dare un particolare valore a questa mia attività no profit. La partecipazione e il coinvolgimento dimostrato hanno abbondantemente ripagato le fatiche del viaggio per raggiungere la sede dell'evento.
Spero, in futuro, di poter ripetere questa esperienza e, soprattutto, che Microsoft continui con iniziative di questo tipo.

Per i ragazzi e i docenti seguono alcuni link di cui abbiamo parlato ieri.
Link alle risorse delle versione express dei tool di sviluppo:
Link ai webcast su Visual Web Developer 2005 Express Edition (in italiano):
Altre risorse per la formazione su Visual Studio 2005 Express Edition

venerdì 30 marzo 2007

Windows Mobile Device Center Troubleshooting Guide

Il programma per sincronizzare Smartphone e PDA pensato da Microsoft per Windows Vista è Windows Mobile Device Center (WMDC). Lo utilizzo fino dalla versione beta senza mai aver avuto alcun problema. Oggi, dopo averlo installato su un secondo portatile con Windows Vista Ultimate, non riuscivo a far connettere un HTC MTeoR (smartphone che si collega senza problemi con l'altro portatile in cui ho installato il WMDC). Le ho pensate un pò tutte senza però risolvere il problema che mi veniva segnalato con un generico messaggio Error. Errore che ora so dipendere da un'errata installazione del driver per Microsoft Windows Mobile Remote Adapter. Come spesso accade la soluzione è nel punto in cui sarebbe stato utile guardare per primo e cioè il Windows Mobile Device Center. Se qualcuno si trovasse davanti a problemi del genere, consiglio di iniziare da questa guida alla risoluzione dei problemi: Windows Mobile Device Center Troubleshooting Guide. Potreste risparmiare parecchio tempo ;-)

mercoledì 28 marzo 2007

SQL Server 2005 Express Edition SP2: installation issue on Windows Vista

Il Windows Update del mio Windows Vista da qualche giorno continuava a tentare di installare la Service Pack 2 di SQL Server 2005 Express Edition senza però riuscirci. Ho provato a seguire il link suggerito nella descrizione dell'errore presente nella Update History ma purtroppo puntava ad una pagina con un numero esorbitante di link e sinceramente non avevo il tempo di mettermi a spulciarli tutti per vedere come risolvere il problema. Tra l'altro, la SP2 di SQL Server 2005 Develeoper Edition, scaricato sempre con Windows Update, non ha dato nessun problema.
Ho quindi provato a scaricare manualmente la SP2 per la Express Edition ma ancora il problema non si risolveva e durante la fase di setup ricevevo il seguente errore: Error 1603. Visualizzando il log di installazione e ragionando un pò sono arrivato a trovare il motivo per cui l'installazione non andava a buon fine: il mio utente, con l'UAC attivato, non aveva i diritti sufficienti per stoppare l'istanza di SQL Server Express Edition. Le opzioni che avevo davanti erano due:
  1. disabilitare l'UAC e riavviare il computer;
  2. stoppare manualmente il servizio.
Visto che avevo dei download in corso ho optato per la seconda opzione. Ho riavviato il setup e mi sono subito accorto che il punto, critico durante i precedenti tentativi, veniva superato brillantemente. Ho quindi incrociato le dita e proseguito nell'installazione. Durante questo processo ho incontrato altri due momenti di stallo. Alcuni servizi/processi usati dalla Express Edition, non presenti tra quelli configurabili con i tool di SQL Server, non si erano spenti e quindi ho dovuto utilizzare il Task Manager per interromperli. Il primo è stato facilmente individuabile ma per il secondo ho dovuto abilitare la visualizzazione dei processi di tutti gli utenti per poterlo individuare. Spenti i processi ed i servizi ancora in piedi, la procedura di installazione è proseguita senza altri intoppi e finalmente la SP2 si è installata anche per la Express Edition.
Qualcuno si starà chiedendo come mai, la SP2 di SQL Server 2005 Developer Edition, si sia invece installata senza problemi. Semplice, l'istanza di quella versione, sul mio notebook, è spenta di default e viene avviata solo quando necessario. Questo ha impedito di incontrare tutti i problemi rilevati per la versione Express.
Certo che la tentazione di tenere sempre disabilitato l'UAC è veramente fortissima !

martedì 27 marzo 2007

Notepad2 in Windows Vista

Qualche tempo fa mi hanno consigliato Notepad2 e, da allora, non né ho più potuto fare a meno. Da quando sono passato a Windows Vista, però, non avevo ancora avuto il coraggio di installarlo e sostituirlo al notepad.exe incluso nel sistema. Oggi mi sono deciso e ho cercato in rete se qualcuno avesse già provato a farlo e se ci fossero dei problemi. Ho trovato le istruzioni qui: Replacing Notepad in Windows Vista.
Al momento tutto funziona bene.

giovedì 22 marzo 2007

USB Storage Device in Windows Vista

La mia quotidiana lotta con Windows Vista continua. Oggi, collegando un disco esterno USB al mio portatile, ho scoperto che Vista non voleva saperne di caricarlo. Ho provato anche ad installare un Update for Windows Vista (KB925528) purtroppo però senza risolvere il problema.
Ha proprio ragione Andrea Saltarello quando dice "si stava meglio quando si stava peggio".

martedì 20 marzo 2007

ASP.NET 2.0 AJAX 1.0 Series

Tra qualche giorno terrò il primo di una serie di webcast dedicati ad ASP.NET AJAX 1.0. Microsoft sta già lavorando alle novità delle prossime versioni ed è venuto il momento, per chi non lo avesse già fatto, di prendere confidenza con questa estensione dell'ambiente di sviluppo web ASP.NET.
Non perdete un'ottima occasione per apprendere, step by step, come utilizzarla nelle vostre applicazioni web.
Vi aspetto numerosi ;-)

Calendario webcast

ASP.NET 2.0 AJAX: Getting Started
Il rilascio del framework ASP.NET 2.0 AJAX non può più farci indugiare. È giunto il momento di conoscerlo e di utilizzarlo per le nostre applicazioni. Questo Webcast è il primo di una serie dedicate all’implementazione Microsoft di AJAX in cui, procedendo in una panoramica generale dall’installazione al suo primo utilizzo, introdurremo le funzionalità incluse in questo framework.
Partecipa al Webcast – 22 marzo, ore 14.30

ASP.NET 2.0 AJAX: Server Controls
Microsoft ASP.NET 2.0 Ajax Extensions contengono alcuni server controls per permettere la rapida realizzazione di applicazioni web ASP.NET che sfruttano questa tecnologia per fornire una nuova esperienza agli utenti finali. Conosceremo da vicino UpdatePanel, UpdateProgress e Timer.
• 5 aprile, ore 11.00

ASP.NET 2.0 AJAX: ASP.NET AJAX Control Toolkit
Un utile compagno di viaggio quando si creano applicazioni ASP.NET basate sulle estensioni AJAX, è sicuramente l'ASP.NET AJAX Control Toolkit. In questo Webcast scopriremo le funzionalità dei principali controlli e extender offerti da questo progetto nato dalla collaborazione tra Microsoft e le community di sviluppatori.
• 19 aprile, ore 11.00

ASP.NET 2.0 AJAX: Client Scripting, Debugging and Tracing
Il framework ASP.NET 2.0 AJAX fornisce ai programmatori un ambiente facilmente estensibile. Cerchiamo di scoprire come sia possibile estendere Javascript con ASP.NET AJAX creando dei nostri script personalizzati.  A corredo di questo introdurremo le tecniche di debugging e tracing per questo tipo applicazioni.
• 3 maggio, ore 14.30

ASP.NET 2.0 AJAX: Web Services
Applicazioni ASP.NET basate sulle estensioni di AJAX trovano nei Web Services uno strumento ideale per incrementare la fruizione di dati distribuiti. In questo webcast dimostreremo come interagire con questi servizi.
• 17 maggio, ore 14.30

ASP.NET 2.0 AJAX: Localization and Globalization
Le nostre applicazioni non posso più fare a meno di includere il supporto per lingue diverse. In questo Webcast esploreremo come sia possibile abilitare le nostre applicazioni ASP.NET, basate sulle estensioni di AJAX, al supporto multilingua.
• 31 maggio, ore 14.30

ASP.NET 2.0 AJAX: Extending ASP.NET AJAX
Pensi che quanto offerto dalle ASP.NET 2.0 AJAX Extensions e dall'ASP.NET AJAX Control Toolkit sia insufficiente per le tue esigenze? Vuoi creare un componente o un controllo? Questo Webcast potrebbe fare al caso tuo.
• 14 giugno, ore 14.30

lunedì 12 marzo 2007

Virtual Machine, usare i dischi differenziali

Dopo aver scaricato la virtual machine contenente la CTP di Orcas, guardando come è stata creata, mi sono chiesto come si potesse sfruttare il meccanismo di creazione di dischi differenziali in Virtual PC e quale uso ne avrei potuto fare. Googlelando ho trovato un post interessante che fornisce alcune idee su come trarre vantaggio da questa caratteristica. Se vi interessa l'argomento qui potete trovare l'articolo: HOWTO: Use Virtual PC's Differencing Disks to your Advantage .

domenica 11 marzo 2007

MVP Summit: arrivato a Seattle ! Meno stanco grazie a Northwest Airlines

Dopo poco più di un'anno e mezzo torno a Seattle per un nuovo MVP Summit. Oltre che un'occasione per incontrare vecchi e nuovi amici, è un momento per stringere i contatti con le persone dei team di sviluppo di Microsoft che possono chiarire aspetti spesso poco documentati utili per utilizzare al meglio la tecnologia con cui lavoro quotidianamente.
Il viaggio è l'unica vera pecca di questi eventi. Sono partito alle 6.10 ora italiana di sabato per arrivare a Seattle alle 14.30 ora locale corrispondente alle 23.30 ora italiana. Un bel pò di tempo tra viaggio aereo e attesa in aeroporto. Quest'anno sono tornato a volare con KLM e Northwest Airlines e la scelta è stata ripagata abbondantemente. Il volo da Amsterdam a Seattle è stato molto confortevole per una classe turistica grazie al fatto che la compagnia americana ha finalmente rinnovato la sua flotta introducendo gli Airbus 300 con un allestimento che permette di godersi il viaggio senza problemi di spazio (distanza tra le file dei sedili, sedute scomode, ecc) che sono spesso la caratteristica di voli fatti con altre compagnie.
Quindi, se dovete volare negli States in una destinazione coperta da Northwest Airlines, fateci un pensierino e non ve ne pentirete. La mia personale classifica, basata sull'esperienza, di questi anni vede:
  1. KLM - NWA (confortevole ma con servizio ridotto all'osso)
  2. SAS (accettabile, buono il servizio a bordo)
  3. British Airways (fortemente sconsigliata per le file dei sedili troppo ravvicinate anche se il catering non è male)
Non sempre il prezzo è la sola cosa da valutare su viaggi così lunghi ;-)

Visual Studio 2005 IDE Tips and Tricks

Prodotti come Visual Studio 2005 sono così ricchi di funzionalità che spesso non né sfruttiamo che una minima parte. A chi volesse conoscere alcuni trucchetti di questo ambiente di sviluppo, consiglio la lettura di questo breve articolo: Visual Studio 2005 IDE Tips and Tricks .

mercoledì 7 marzo 2007

Orcas Virtual Machine, una dimenticanza non da poco

Visto che oggi avevo un pò di tempo a disposizione ho pensato bene di scaricarmi la Virtual Machine contenente la CTP di Orcas. Al termine del download ho provato a lanciare Virtual PC 2007 per provarla ma, mio malgrado, ho scoperto che non funzionava per la mancanza del file E:\VPC\TimeBombedBase\Base01.vhd.
Ricercando in rete ho trovato un post che spiega il perchè di questo problema causato da una mancata indicazione dei corretti step da seguire per l'installazione di questa VM. Se avete lo stesso problema provate a seguire quanto indicato in questo post: E:\VPC\TimeBombedBase\Base01.vhd.

domenica 4 marzo 2007

Visual Studio 2005 Team Edition for Database Professionals - Technical Workshop - si replica !

L'elevato numero di consensi e richieste ha fatto si che Microsoft optasse per una seconda data per il Visual Studio 2005 Team Edition for Database Professionals Technical Workshop. Questa volta l'appuntamento è a Roma, il 4 aprile prossimo. Se non avete partecipato al primo incontro di Milano non potete perdervi questa seconda occasione. Per maggiori informazioni visitate la pagina dedicata all'evento qui.

venerdì 2 marzo 2007

E-Learning Offline Player e Windows Vista

Ci vuole pazienza. Ancora non tutti i controlli o tool usati nei siti Microsoft sono stati aggiornati per funzionare con Windows Vista e Internet Explorer 7. Uno di questi è l' E-Learning Offline Player. Per poterlo installare ho dovuto disabilitare il famigerato User Account Control perchè anche con il Protected Mode: Off il browser non lo rilevava come installato. Altro problema che ho riscontrato, durante l'installazione, è che il Flash player installato sul mio browser non era, nonostante fosse aggiornato all'ultima versione disponibile, compatibile con l'E-Learning Offline Player. Ho quindi dovuto disinstallare il Flash player presente nel mio PC per Internet Explorer 7 utilizzando il tool apposito, e quindi reinstallare quello proposto dalle pagine di download. Alla fine il risultato è quasi simile a quanto si poteva avere con il rimpianto Windows XP.

Microsoft e-learning Clinic 5230: Developing Enhanced Web Experiences with Microsoft & ASP.NET AJAX Extensions

Se qualcuno fosse interessato, Microsoft e-Learning ha rilasciato un corso di circa 2 ore sulle ASP.NET AJAX Extension. Il corso è sottoscrivibile gratuitamente, vi basta visitare la pagina dedicata al Clinic 5230 e sottoscrivervi. Per maggiori informazioni potete cliccare qui.
Per altri corsi gratuiti o a pagamento vi suggerisco di dare un'occhiata a questa pagina: Microsoft e-learning Developer Catalog

giovedì 15 febbraio 2007

Install NetAdvantage for .NET 2006 Vol 3 on Windows Vista

In un progetto che sto seguendo, dopo aver valutato alcune suite di componenti di terze parti, si è scelto di utilizzare i componenti della Infragistrics in quanto sembrano offrire una maggior copertura rispetto a quelli di altri vendor. Ho quindi deciso d'installare la suite anche sul mio portatile scoprendo però, che alcune impostazioni di Windows Vista, non ne permettevano l'installazione. Fortunatamente il team di supporto di Infragistics si è dimostrato all'altezza delle aspettative e, in giro di qualche ora, mi ha risposto inviando la soluzione al mio problema. Per chi si trovasse in questa situazione, a seguire trovate il link per poter installare la NetAdvantage for .NET 2006 Vol 3 su un computer dotato di Microsoft Windows Vista: Installing NetAdvantage for .NET on Windows Vista.

mercoledì 7 febbraio 2007

ASP.NET AJAX Documentation

Finalmente è disponibile per il download la documentazione di ASP.NET 2.0 AJAX 1.0. Almeno ora, tra un viaggio e l'altro, potrò continuare i miei approfondimenti su questa tecnologia.
Per chi fosse interessato ecco il link: ASP.NET AJAX Documentation

domenica 4 febbraio 2007

Web Application Security

Vi siete mai chiesti se la vostra web application è realmente sicura? Beh, per chi vuole togliersi il dubbio, ecco un utile tool che vi aiutera a scovare le eventuali vulnerabilità presenti nella vostra soluzione: ANSA - ASP.NET Security Analyzer.
Nel sito del OWASP - Open Web Application Security Project si trovano molte informazioni interessanti, tool, guide e applicazioni di esempio che possono essere d'aiuto per migliorare la sicurezza delle nostre applicazioni web.

domenica 28 gennaio 2007

ASP.NET AJAX - Videos & Samples

Rivedendo il materiale per un articolo, ho notato che nel sito dedicato ad ASP.NET AJAX c'è una sezione di Video utile per chi vuole avvicinarsi allo sviluppo di applicazioni web basate su questa tecnologia. I video sono scaricabili unitamente al codice di supporto.
Se siete interessati qui trovate l'elenco dei video disponibili: ASP.NET Videos

sabato 27 gennaio 2007

SIG - Special Interest Group, un esperienza da ripetere

Ieri ho avuto il piacere di partecipare ad un SIG su Office System. Questi gruppi sono normalmente aperti al solo personale Microsoft ma questa volta l'invito è stato esteso anche a noi MVP. Devo dire che ho trovato l'incontro molto utile soprattutto perché mi ha fatto incontrare persone Microsoft che lavorano sul campo e che, come normalmente capita a noi, si confrontano con le esigenze del mercato. Le informazioni acquisite sono di sicuro valore; come di valore è aver potuto prendere contatto con risorse Microsoft che potrebbero essere degli ottimi referenti per futuri progetti.
Spero di poter contribuire attivamente in guesto gruppo in modo da instaurare un canale bi-direzionale di conoscenza e formazione.

mercoledì 24 gennaio 2007

FileSystemWatcher: The process cannot access the file .... because it is being used by another process.

La classe FileSystemWatcher può risultare molto utile quando si vogliono monitorare file e folder. Nell'usarla bisogna però stare attenti a non scontrarsi con le funzionalità del sistema operativo ed in particolare con l'accesso esclusivo ai file. Cosa che ho imparato a mie spese ricevendo l'errore The process cannot access the file .... .
Questo errore accade perchè il file a cui si tenta di accedere, dopo la segnalazione del FileSystemWatcher, è ancora bloccato da un'altro processo (per esempio il processo di scrittura nella cartella monitorata). Per ovviare a questo problema ho inserito nella mia implementazione una metodo che verifica se il file è apribile oppure no. Ecco come si presenta il metodo:
private bool IsFileOpen(string fileName)
{
try
{
if (File.Exists(fileName))
{
FileStream stream = File.Open(fileName, FileMode.Open);
stream.Dispose();
}
return false;
}
catch (IOException ex)
{
ex = null; return true;
}
}
Quest'ultimo viene chiamato dai metodi delegati alla gestione degli eventi Changed, Created, Deleted e Renamed per porre un periodo di attesa qualora il file non risulti disponibile:
while (IsFileOpen(e.FullPath) == true) {
System.Threading.Thread.Sleep(250);
}
Per evitare loop infiniti, il codice andrebbe arricchito con un counter che limiti in qualche modo i cicli all'interno del while; per esempio in questo modo:
int counter = 0;
while (IsFileOpen(e.FullPath) == true && counter < 10)
{
System.Threading.Thread.Sleep(250); counter++;
}
Sicuramente si possono trovare delle soluzioni più eleganti ma, per il momento, questa mi ha permesso di rimettere in produzione il servizio basato sul FileSystemWatcher che funzionava a singhiozzo. Sperando in un pò di tempo libero magari riuscirò a realizzare qualcosa più utile per risolvere questo problema.

martedì 23 gennaio 2007

Convertire applicazioni da ASP.NET AJAX RC a ASP.NET AJAX RTM

Qualcuno poteva pensare che non ci sarebbero state differenze tra la RC e la RTM ma in realtà non è così. Le differenze ci sono, anche se piccolissime, e quindi è necessario mettere mano alle nostre applicazioni per renderle compatibili con la RTM.
Gli step da seguire sono:
  • Installare la RTM dopo aver rimosso la RC
  • aggiornare le pagine ASP.NET esistenti nelle quali sia stato usato l'AutoCompleteExtender (che ora fa parte del ASP.NET AJAX Control Toolkit)
  • Modificare il file di configurazione (web.config) dell'applicazione.
Il dettaglio di questi step si può leggere qui.

ASP.NET AJAX is here !

E' stata rilasciata la versione finale di ASP.NET AJAX e non mancano le novità. Ora non vi resta che visitare il sito ajax.asp.net e procedere con il download ;-)

AJAX, in attesa della RTM

Si dice sia questione di giorni o forse di ore. Al momento resta il fatto che, se volete provare questa tecnologia, dovete accontertarvi della Release Candidate.
Grazie all'opportunità offertami da Microsoft Italia, ho provato a riassumere in un articolo di overview le particolarità base dell'implementazione ASP.NET 2.0 AJAX 1.0 (RC).
Se vi va di leggere l'articolo e il tips qui trovate i link.
ASP.NET AJAX - Overview
ASP.NET AJAX – Aggiornare un UpdatePanel con un controllo esterno (Tip)
Sfrutto questo post anche per pubblicizzare il mio precedente articolo in cui ho illustrato una delle novità della versione 2.0 di ASP.NET: il VirtualPathProvider. Ecco il link:
ASP.NET: Utilizzare un Virtual File System
Buona lettura ;-)

sabato 20 gennaio 2007

Il tuo computer è pronto per Windows Vista?

Con l'imminente rilascio del nuovo sistema operativo di Microsoft, più di qualcuno si sarà posto questa domanda: ma il mio computer è pronto per Windows Vista? Beh se volete saperlo, qui c'è un tool della Crucial Technology che vi può dare la risposta:
Is Your Computer Ready for Windows® Vista™?

Windows Communication Foundation e gli add-in per Visual Studio 2005

In questi giorni mi sto cimentando con la realizzazione di un add-in per Visual Studio 2005 che consumi i dati provenienti da un servizio realizzato con Windows Comminication Foundation (WCF). La creazione dell'add-in è di per se abbastanza agevole soprattutto se si parte dagli esempi che si hanno a disposizione dopo aver installato il Microsoft Visual Studio 2005 Automation Samples. I problemi arrivano quando si chiede qualcosa di più come, ad esempio, consumare un servizio WCF. La documentazione a riguardo è, al momento, poca e spesso imprecisa e quindi non è facile risolvere i vari problemi che si possono incontrare durante lo sviluppo. Per fortuna ci sono gli amici della community a cui chiedere aiuto ;-)
Nei giorni scorsi sono riuscito a risolvere un problema proprio grazie all'aiuto di Andrea Boschin, Davide Bedin e il mitico Raffaele Rialdi. Il mio add-in, infatti, continuava ad andare in eccezione nel momento in cui tentavo di connettermi al servizio. Il servizio funzionava se chiamato da altre applicazioni, la configurazione era correttamente inserita nel file app.config ma l'eccezione continuava a verificarsi e le sue indicazioni ci spingevano a credere che la configurazione non fosse corretta. Anche dopo aver verificato che la configurazione fosse assolutamente corretta e che il file fosse accessibile dall'add-in il problema non si risolveva. Quindi, dopo che io e Andrea ne avevamo provate di tutti i colori, grazie al suggerimento di Davide che ci consigliava di usare FileMon rafforzato dallo stesso Raffaele, abbiamo iniziato ad indagare se effettivamente il file di configurazione venisse utilizzato dal client del servizio. Ed ecco individuato il problema ! Il client cercava la configurazione nel file di configurazione di Visual Studio (devenv.exe.config) invece che in quello dell'add-in. E' quindi bastato inserire la parte di configurazione in quel file per risolvere il problema.
Certamente questa soluzione non è ottimale ma per il momento ci va bene così (l'add-in è a solo uso del nostro team di sviluppo). In futuro cercheremo di configurare il client in modo diverso al fine di evitare di dover toccare il file di configurazione di Visual Studio.
L'esperienza fin qui raccolta mi permette di suggerirvi alcuni tips per risparmiare tempo quando deciderete di lavorare con gli add-in per Visual Studio 2005:
  1. Usate EnvDTE80.DTE2 se l'add-in che volete creare è destinato eslusivamente a Visual Studio 2005. Espone meglio le proprietà che potrebbero servirvi durante lo sviluppo.
  2. Per configurare l'add-in usate il file app.config. Attenzione però che questo non viene utilizzato da WCF.
  3. Se consumate un servizio WCF ricordatevi di inserire i parametri di configurazione nel file devenv.exe.config o trovate un sistema alternativo per istruire il vostro client su come consumare il servizio.
  4. Se il vostro add-in deve interagire con la soluzione fate attenzione perchè, in debug, l'add-in leggerà la soluzione in cui state sviluppando e da cui avete avviato il debug; quindi non quella che avrete aperto per testare il componente. La soluzione è di non usare il debug, in questi casi, chiudere il progetto di sviluppo ed aiutarsi con message box o altre vecchie tecniche di debugging che si usavano quando si lavorava con linguaggi non dotati di debug.