Visual Studio 2010 RC Ria Services - Business Application and datagrid Part 1 In questo tutorial vedremo come utilizzare la tecnologia Ria Services per collegare una datagrid ad un database all interno di una Silverlight Business Application. Apriamo visual studio e creiamo un nuovo progetto: Quindi scegliamo Silverlight Business Application e clicchiamo su ok:
A questo punto, dopo aver salvato l applicazione nella nostra cartella di lavoro, aggiungiamo un New Item : Precisamente aggiungiamo una Silverlight Page che chiameremo Customers :
Lanciamo l applicazione per visualizzarne il risultato nel browser. Clicchiamo quindi sul tastino play (Start Debugging) o premiamo F5. Quindi ci troveremo di fronte alla business application. Il prossimo obiettivo è aggiungere un tastino in alto a destra nella nostra applicazione che vada a richiamare la pagina Customers che abbiamo creato precedentemente. Chiudiamo il browser e torniamo su visual studio, in particolare sulla MainPage.xaml dove è necessario inserire il codice sottostante nel relativo stackpanel che contiene gli altri tasti home ed about.
Il risultato a livello di codice dovrebbe essere il seguente: Lanciamo l applicazione e notiamo la presenza del tastino Customers che punta alla relativa pagina in alto a destra:
A questo punto è necessario aggiungere un New Item e precisamente un ADO.NET Entity Data Model che chiamiamo CustomersModel con estensione edmx:
Creiamo il nostro Entity Data Model da un database già esistente selezionando Generate from database e clicchiamo su next:
Quindi clicchiamo su New Connection per creare una nuova connessione al database che ci interessa.
Successivamente clicchiamo su Browser per selezionare il nostro database. Per questo tutorial utilizzeremo il database di esempio Northwind che la Microsoft mette a disposizione proprio per la creazione di prototipi. E facilmente reperibile in rete se non già installato con visual studio.
Selezioniamo il database: Verifichiamo che la connessione sia stata stabilita correttamente cliccando su Test Connection :
Clicchiamo su Next nella schermata successiva: Clicchiamo su si nella schermata successiva per aggiungere al progetto il relativo database:
Scegliamo nella schermata successiva le tabelle che verranno importate dal database verso il nostro ADO.NET Entity Data Model che abbiamo denominato CustomersModel. Nel nostro caso selezioniamo la tabella Customers quindi clicchiamo su Finish.
Ecco quindi la tabella Customers importata nel nostro Entity Model. NB: prima di continuare è importante a questo punto compilare la soluzione!
Aggiungiamo ancora un New Item alla soluzione: Quindi selezioniamo il template Domain Service Class e denominiamolo CustomersService :
Nella seguente schermata selezioniamo le opzioni Enable cliente access, Customers, Enable editing, Generate associated classes for metadata e clicchiamo su ok: Apriamo ora la pagina che abbiamo creato all inizio ovvero la Customers.xaml. Aggiungiamo il seguente namespace:
A questo punto dovremmo avere il seguente risultato: Aggiungiamo ora all interno del tag Grid la seguente stringa: Ottenendo quindi il seguente risultato:
Clicchiamo tasto destro nella pagina di lavoro e clicchiamo su View Code per accedere al Code Behind del nostra pagina:
Inseriamo ora qualche riga di codice per completare la nostra applicazione. Iniziamo a digitare sotto InitializeComponent(); la seguente stringa: Loaded += L intellisense di visual studio ci viene in aiuto proponendoci la pressione del tasto TAB per inserire il new RoutedEventHandler(Customers_Loaded). Quindi priemiamo TAB. Ancora una nuova proposta dell intellisense quindi premiamo ancora TAB ottenendo il seguente risultato:
Ora cancelliamo la stringa throw new NotImplementedException(); giungendo ad un risultato simile a questo: Aggiungiamo ora le seguenti righe di codice: Posizionamoci su CustomersContext e clicchiamo sul menu come indicato sotto:
Quindi il risultato finale: Lanciamo l applicazione digitando F5 ed ecco l applicazione finale: