Alessandro Del Sole's Blog

{ A programming space about Microsoft® .NET® }
posts - 1906, comments - 2047, trackbacks - 352

My Links

News

Your host

This is me! Questo spazio è dedicato a Microsoft® .NET®, di cui sono molto appassionato :-)

Cookie e Privacy

Disabilita cookie ShinyStat

Microsoft MVP

My MVP Profile

Microsoft Certified Professional

Microsoft Specialist

Xamarin Certified Mobile Developer

Il mio libro su VB 2015!

Pre-ordina il mio libro su VB 2015 Pre-ordina il mio libro "Visual Basic 2015 Unleashed". Clicca sulla copertina per informazioni!

Il mio libro su WPF 4.5.1!

Clicca sulla copertina per informazioni! E' uscito il mio libro "Programmare con WPF 4.5.1". Clicca sulla copertina per informazioni!

These postings are provided 'AS IS' for entertainment purposes only with absolutely no warranty expressed or implied and confer no rights.
If you're not an Italian user, please visit my English blog

Le vostre visite

I'm a VB!

Guarda la mia intervista a Seattle

Follow me on Twitter!

Altri spazi

GitHub
I miei progetti open-source su GitHub

Article Categories

Archives

Post Categories

Image Galleries

Privacy Policy

LightSwitch: creare una pagina di registrazione per eventi, ovvero come abbiamo creato la pagina per il nostro evento di lancio - parte 3

Nei post precedenti ho illustrato come è stata creata, con Visual Studio LightSwitch, la pagina di registrazione per l'evento di lancio che abbiamo tenuto il 27 luglio u.s.

Nel primo post abbiamo creato dati & screen, nel secondo post abbiamo visto come creare un controllo custom con Silverlight per far scaricare il calendario di Outlook e le credenziali di accesso, facendo l'override del Details Screen.

In questo post concludiamo l'opera, parlando di collaborazione e deployment su server Web.

Perché noi usiamo Team Foundation Server 2010

Uno dei miei sport preferiti è mettere in crisi il buon Antonio Catucci con le mie solite trovate  Uno di questi momenti è stato quando ho prospettato non tanto il farsi dell'evento, quanto l'idea di creare la pagina di registrazione utilizzando LightSwitch. Noi usiamo Team Foundation Server 2010, perché in fatto di collaborazione, tracking e sharing dei sorgenti non ha eguali. Visual Studio LightSwitch si integra alla perfezione e supporta in modo totale TFS (era questo che mi premeva evidenziare!). Detto, fatto: il mio progetto LightSwitch è stato caricato in un team project e associato al source control. Il buon Antonio l'ha poi preso dalla sua parte e ha fatto qualche modifica nei dati, come vi ho segnalato precedentemente, facendo check-in delle sue modifiche a beneficio di tutti. Dopodiché è stato il momento della pubblicazione.

Attenzione alla privacy: la schermata di progettazione "Immediate Customization"

Durante la sua sessione di lancio, Antonio ha mostrato una caratteristica speciale di LightSwitch, ossia quella chiamata Immediate Customization che, attraverso il pulsante Design Screen, permette di personalizzare il layout degli screen a runtime, senza dover tornare all'IDE. I cambiamenti sono mostrati in anteprima e riflessi nell'interfaccia al salvataggio. Fichissimo, non c'è che dire, e utile se l'applicazione è data ad utenti che vogliono avere questo livello di personalizzazione.

Considerazione: Immediate Customization è una funzionalità di debug al 100%, non estetica. Infatti è disponibile solamente se l'applicazione è compilata in modalità Debug e sparisce se la compiliamo in Release. Si fa vedere nelle demo, se ne parla per farla conoscere anche ai principianti, ma qualunque esperto di LightSwitch vi dirà che è una funzionalità di debug.

Problema: Immediate Customization permette di personalizzare il layout, ciò include l'aggiunta allo Screen di local property, incluse quelle che puntano alle query, incluse le query che restituiscono informazioni riservate, a meno di aver implementato regole di access control sull'utente loggato. Per noi questa era una circostanza importante, perché l'applicazione doveva supportare l'autenticazione anonima per forza di cose, quindi niente access control.

Soluzione: compilate sempre in modalità Release prima di distribuire ad altri l'applicazione. Se non l'avessimo fatto, a causa della necessità di autenticazione anonima chiunque avrebbe potuto personalizzare lo screen con una local property che tirasse fuori l'elenco di tutti gli iscritti, alla faccia della privacy.

E' chiaro che poi c'è tutto il discorso dell'Access Control, dell'autenticazione Windows, Forms, dei permessi.. ma fate attenzione a queste piccole cose molto sottili.

Deploy su server Web

Chi ha seguito la mia prima sessione ha avuto modo di vedere come sia semplice distribuire un'applicazione LightSwitch su un server Web che abbia Internet Information Services. Risparmiandovi chiacchiere, vi rimando alla registrazione della sessione per informazioni su questo tipo di pubblicazione del quale comunque riporto i punti fondamentali:

  1. Nel server accertatevi che il servizio di MSDeploy sia avviato
  2. Sulla macchina di sviluppo LightSwitch va eseguito come amministratore
  3. Si seleziona Build, Publish per attivare il Publish Wizard
  4. Il tipo di client è Web, e l'hosting è su IIS. Attenzione: LightSwitch richiede i server deployment prerequisites sul server di destinazione. C'è un'apposita check box nel wizard. Deselezionatela se non siete sicuri che i prerequisit ci siano, che al massimo ci pensa lui. Potete tranquillamente installarli anche tramite Web Platform Installer
  5. Per il database si specificano le credenziali di un amministratore di SQL Server che abbia i permessi per creare un nuovo database o aggiornarne uno esistente
  6. Sempre lato SQL, si crea un utente standard con autenticazione SQL direttamente dal Wizard.
  7. Se avete voglia di smanettare potete pubblicare l'applicazione come package e importarla a mano poi sul server tramite la console di gestione di IIS ma... noi preferiamo la pubblicazione diretta verso Web server
  8. Come destinazione mettete http://nomeserver e come percorso lasciate Default Web Site/ seguito dal nome della directory che volete creare per la vostra pagina
  9. Al termine del deploy, in IIS accertatevi che l'AppPool per la vostra nuova applicazione giri su .NET 4.0.

Vi ricordo che, a differenza della primissima Beta, già con la Beta 2 non dovete fare alcuna configurazione manuale in IIS, se non appunto accertarvi che il servizio MSDeploy sia avviato.

Ed è tutto. Noi ci siamo divertiti ed è stato un modo per capire l'uso LightSwitch con finalità di community.

Se avete dubbi, soprattutto per il deploy, fateci sapere.

Alessandro

Print | posted on domenica 31 luglio 2011 21:17 | Filed Under [ Visual Basic Visual Studio Extensibility Silverlight e Windows Phone Visual Studio 2010 Community and friends Visual Studio LightSwitch ]

Powered by:
Powered By Subtext Powered By ASP.NET