Développement d`applications avec LINQ, C# et Visual Studio 2008
Transcription
Développement d`applications avec LINQ, C# et Visual Studio 2008
HEIG-VD Route de Cheseaux 1 CH - 1401 Yverdon-les-Bains www.heig-vd.ch Développement d'applications avec LINQ, C# et Visual Studio 2008 LINQ : pourquoi faire ? LINQ est la grande nouveauté du .NET Framework 3.5. Deux grandes idées motivent son existence : la volonté d'avoir un langage unique pour manipuler des données issues de différentes sources et la détermination à intégrer ce langage à un langage de programmation de haut niveau. Dans notre cas, le C# ou le VB.NET. Source : http://www.micrsoft.com Le but du projet L'objectif était de réaliser un document de référence sur la technologie LINQ. Il devait être accessible à des développeurs inexpérimentés et leurs permettre une rapide prise en main de LINQ. Il comprend donc de nombreux exemples et tutoriels. Les facettes de LINQ… LINQ se décline en plusieurs composantes qui ont des fonctions bien particulières : possible de travailler directement avec des objets. LINQ to DataSet qui lui permet la manipulation et l'interrogation de collection ADO.NET. LINQ to Entities qui permettra dans l'avenir de manipuler et interroger des données issues de tous les SGBD importants. Pour l'instant, seules SQL Server, Oracle, MySQL et SQLite sont fonctionnels. Contrairement à LINQ to SQL, le mappage n'est pas direct. Ce qui offre la possibilité de travailler sur le modèle conceptuel pour créer ses propres types d'objet à partir du modèle logique. LINQ to XML permet quant à lui, la manipulation et l'interrogation de données au format XML. Cette partie est non négligeable, vu la popularité de XML et les innovations apportées. La manipulation et l'interrogation de documents XML étaient jusqu'ici très lourdes, Microsoft offre un début de réponse à ce problème en intégrant notamment la construction fonctionnelle et en rendant accessibles la manipulation de type de fichier même aux programmeurs allergiques à DOM. En conclusion Il serait faut de penser que LINQ n'est qu'un simple langage d'interrogation inspiré de SQL. Il offre de nombreuses fonctionnalités qui élargissent et ouvre de nouvelles voies dans le domaine de la manipulation des données. // La source de données int[] nombres = new int[9]{1,2,3,4,5,6,7,8,9}; LINQ to Object qui permet de manipuler et d'interroger des collections de données standards (tableaux et listes). // Création de la requête // Tous les nombres pairs var requete = from nombre in nombres where nombre % 2 == 0 select nombre; LINQ to SQL qui manipule et interroge des données issues d'une base de données SQL Server. La base de données est mappée à des classes entités. De cette manière, il est // Exécution de la requête foreach (int n in requete) Console.WriteLine("{0}",n); Auteur: Répondant externe: Prof. responsable: Sujet proposé par: Exemple de requête en LINQ sous Visual Studio 2008 Gilles Thonney Pascal Akermann René Rentsch René Rentsch HEIG-VD © 2008 - 2009, filière Informatique