[Silverlight 2] Connexion à une base de données SQL SERVER avec ADO .Net Data Service
Ce tutorial va sûrement plaire au débutant qui se lance avec
Silverlight 2 :)
Je vais vous expliquer comment dans une application
Silverlight 2 on remplit Datagrid à
partir d’une base de données SQL SERVER 2005 (l’exemple fonctionne aussi bien avec
SQL SERVER 2008).
La réalisation de cet exemple consiste à passer par deux
étapes :
Phase 1 : La création du Web Service qui va permettre de se connecter à la BDD (utilisation de ADO .Net Data Service)
- Créer
un nouveau projet Visual studio de type ASP NET, Web Application

- Ajouter
un élément de type ADO .NET Entity data Model -> ex : Model1.edmx
- Connexion à
la base de données, pour l’exemple j’utilise « Northwind », et je choisie les tables, les vues, les
procédures stockées que je vais intégrer au modèle.

En cliquant sur
« Finish » vous aurez la possibilité d’apercevoir l’ensemble du
modèle

- Créer
un ADO .Net Data Service qui sera l’interface entre l’application
Silverlight 2 et la base de données 2005

- Attacher
le Model de donnée ADO .Net Entity data Model au Data Service

A ce stade vous pouvez compiler
et exécuter votre programme, pour tester votre Data service.
Phase 2 : Création du
projet Silverlight.
- Ajouter
un nouveau projet de type Silverlight 2 (laisser les configurations du
projet par défaut)

- Ajouter
un Datagrid dans page.xml qui se
nomme par exemple : « grid ».
<data:DataGrid x:Name="grid" Width="1000"></data:DataGrid>
- Ajouter
une référence web, en cliquant sur Discover, pour atteindre le Data
Service qu’on a créé précédemment.

- Modifier
le code de la page Silverlight « Page.xaml.cs »
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | namespace SilverlightApplication1 {
public partial class Page : UserControl {
ServiceReference1.NorthwindEntities test = new ServiceReference1.NorthwindEntities( new Uri("WebDataService1.svc", UriKind.Relative));
public Page() {
var q = (from p in test.Products select p) as System.Data.Services.Client.DataServiceQuery<ServiceReference1.Products>; q.BeginExecute( (ar) this.grid.ItemsSource = q.EndExecute(ar).ToList(),null);
InitializeComponent(); } } }
serv1.NorthwindEntities6 test = new serv1.NorthwindEntities6( new Uri("WebDataService1.svc", UriKind.Relative));
public Page()
{
var q = (from p in test.Products select p) as System.Data.Services.Client.DataServiceQuery<serv1.Customers>; q.BeginExecute((ar) => this.grid.ItemsSource = q.EndExecute(ar).ToList(),null);
InitializeComponent();
} |
Utilisation de LinQ pour requêter ADO .Net Data
Service, et afficher les données dans le Datagrid nommée « grid ».
Appuyer sur la touche F5 pour
exécuter votre programme, si tout c’est bien passé vous devez apercevoir le
même résultat que ci-dessous dans votre navigateur web

Vous savez maintenant vous connecter
à une base de données via ADO .Net Data Service, et afficher les données dans un Datagrid en
Silverlight 2 en consommant un ADO .Net Data Service.
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :