Technology Experience

Contenuti gestiti da Igor Damiani
posts - 949, comments - 2741, trackbacks - 15120

My Links

News

  • Questo blog si propone di raccogliere riflessioni, teoriche e pratiche, su tutto quello che riguarda il world-computing che mi sta attorno: programmazione in .NET, software attuale e futuro, notizie provenienti dal web, tecnologia in generale, open-source.

    L'idea è quella di lasciare una sorta di patrimonio personale, una raccolta di idee che un giorno potrebbe farmi sorridere, al pensiero di dov'ero e cosa stavo facendo.

    10/05/2005,
    Milano

Archives

Post Categories

Generale

Deploy di un'applicazione .NET che usa il controllo ReportViewer

Sabato mattina ho fatto un piccolo esperimento su una virtual machine appositamente allestita proprio per simulare l'installazione di una mia applicazione, prima di andare effettivamente dal cliente e fare figuracce. L'applicazione è una normale applicazione Windows Forms che utilizza SQL Server 2005 come back-end e il controllo ReportViewer per generare qualche report di stampa con annesse anteprime.

Mi sono fatto prima alcuni ragionamenti: la mia applicazione è .NET, per cui teoricamente è possibile installarla con un semplice copia & incolla dalla macchina di sviluppo alla macchina di produzione. Chi installa il .NET Framework 2.0? E chi installa SQL Server 2005 Express Edition?

Questa mattina in pochi minuti ho trovati tutte le risposte. E' vero che possiamo installare il FX 2.0 a mano, così come facciamo noi sui nostri PC di sviluppo. Però sarebbe più corretto che l'utente finale non debba farlo manualmente, anche perchè il setup del FX è troppo tecnico, e lo chiamerebbe in causa su questioni che proprio non gli interessano. Poco user-friendly, senza dubbio! La cosa migliore è installare il FX come parte integrante del setup della nostra applicazione: tutto sommato, è un prerequisito. Ho trovato questo post fresco fresco che illustra alcuni metodi per installare il FX, più o meno interattivi/silenti con l'utente, che credo utilizzerò io stesso per installare il FX sul mio PC al prossimo formattone. Non sto qui a riportare la sintassi, leggetevi il post originale che è meglio.

Il deploy del controllo ReportViewer e di tutte le sue dipendenze mi ha spiazzato un po': pensavo venisse installato direttamente da SQL Server 2005 (anche nella sua Express Edition), ma a quanto pare non è così. Ho trovato quindi questa pagina su MSDN che spiega nel dettaglio cosa e perchè bisogna installare sul PC dell'utente finale per fare in modo che i report funzionino anche lì. In breve, si tratta di lanciare il setup del file:

C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\BootStrapper\Packages\ReportViewer\ReportViewer.exe

che si occupa di deployare tutto il necessario, registrando alcuni gli assembly nella GAC e via dicendo. Esiste anche la versione localizzata che si trova nella directory:

C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\BootStrapper\Packages\ReportViewer\<lang>.

Ovviamente, <lang> dipende dalla localizzazione stessa. I files RDLC, che sono i report veri e propri, devono essere deployati insieme all'applicazione stessa. Il file ReportViewer.exe installa solamente l'infrastruttura tecnologica minima e necessaria per far girare i report. Nel mio caso, i report sono contenuti in un assembly dedicato ed incorporati come risorse nell'assembly stesso. Stasera provo e vedremo un po'.

powered by IMHO 1.2

Print | posted on lunedì 3 luglio 2006 13:24 | Filed Under [ Sviluppo .NET ]

Feedback

Gravatar

# re: Deploy di un'applicazione .NET che usa il controllo ReportViewer

nel mio caso mi sono ritrovato Sql2005 Express già installato dal cliente per altri scopi. Cmq, ho googlato e ho trovato questo articolo:
http://msdn2.microsoft.com/en-us/library/ms144259.aspx

che descrive come installare Sql2005 dal command-prompt, specificando user/pwd, se creare una default-instance o una named-instance, e via dicendo. Utilissimo anche questo.
03/07/2006 14:03 | Igor Damiani
Gravatar

# re: Deploy di un'applicazione .NET che usa il controllo ReportViewer

è vero, ricordo la tua sessione ai CD. Io non voglio usare ClickOnce, però il ragionamento non fa una piega. Facendo un progetto di setup per la mia applicazione, è possibile indicare i prerequisiti che vengono installati e che servono al mio sw per girare.
03/07/2006 15:37 | Igor Damiani
Comments have been closed on this topic.

Powered by:
Powered By Subtext Powered By ASP.NET