Présentation de LinqPad – Editeur de requêtes Linq .Net

Bonjour à tous,
Je vais vous présenter un outil fort appréciable pour le requétage Linq : LINQPad
Le logiciel est gratuit et disponible à l’adresse suivante : http://www.linqpad.net/ Il est possible d’activer l’IntelliSense moyennant une quarantaine de dollars.

PRESENTATION

LinqPad_01.png

LINQPad permet donc d’écrire des requêtes Linq sur plusieurs sources de données : Linq To Objects, Linq To SQL, Linq To Entities (Entity Framework), Linq To WCF, Linq To XML et même bien d’autre qui sont développés par des tiers sous forme de Drivers (notamment le driver IQ qui me permet de faire du Linq to SQL sur un DB Oracle, MySQL ou SQLite).
Le logiciel gère plusieurs langages pour écrire les requêtes Linq : C#, VB.net, SQL, et même F#

LinqPad_02.png

Bonjour à tous,
Je vais vous présenter un outil fort appréciable pour le requétage Linq : LINQPad
Le logiciel est gratuit et disponible à l’adresse suivante : http://www.linqpad.net/ Il est possible d’activer l’IntelliSense moyennant une quarantaine de dollars.

PRESENTATION

LinqPad_01.png

LINQPad permet donc d’écrire des requêtes Linq sur plusieurs sources de données : Linq To Objects, Linq To SQL, Linq To Entities (Entity Framework), Linq To WCF, Linq To XML et même bien d’autre qui sont développés par des tiers sous forme de Drivers (notamment le driver IQ qui me permet de faire du Linq to SQL sur un DB Oracle, MySQL ou SQLite).
Le logiciel gère plusieurs langages pour écrire les requêtes Linq : C#, VB.net, SQL, et même F#

LinqPad_02.png

On saisit donc les requêtes comme si on se trouvait dans Visual Studio :

LinqPad_03.png

Ou encore :

LinqPad_04.png

On peut ainsi utiliser toutes les syntaxes Linq tels que les GroupBy et autres.
On peut également utiliser des objets .Net tels que Date.Now par exemple.
Le logiciel est livré avec un certain nombre d’exemples d’utilisation de requête Linq, notamment avec les exemples utilisée dans C# 4.0 in a Nutshell.

EXEMPLE D'UTILISATION

Voici maintenant un petit exemple de requête sur un modèle de données : prenons le cas de mon utilisation actuelle, à savoir requêter sur Entity Framework.
Il faut dans un premier temps créer une connexion au modèle EF que l’on souhaite exploiter en cliquant sur LinqPad_16.png du panneau des connexions.

LinqPad_05.png

Sur cet écran, on spécifie le driver utilisé pour accéder aux données : dans notre cas, il faut utiliser un contexte de données typé, de type Entity Framework, puis cliquez sur « Suivant »

LinqPad_06.png

Pour utiliser les entités d’Entity Framework d’un projet, il faut renseigner à LinqPad l’assemby qui contient le modèle Entity Framework en cliquant sur « Browse » de la ligne « Path to Custom Assembly » et en allant chercher la librairie ou le .exe qui contient la définition d’Entity Framework

LinqPad_07.png

LinqPad_08.png

Une fois l’assembly sélectionnée (dans mon cas PPONew.exe), LinqPad liste les différents contextes EF présent dans la solution, ainsi que les différents fichiers edmx liés. Dans mon cas il y en a qu'un, donc il suffit de selection l’Entity Data Model et de cliquer sur OK.

LinqPad aura rempli les champs nécessaires à partir des informations trouvées dans l’Entity Data Model spécifié, notamment le type du provider ainsi que la connexion string.

LinqPad_09.png

Il n’y a plus qu’à cliquer sur « OK » pour que la connexion apparaisse dans le panneau des connexions.

LinqPad_10.png

La connexion est ouverte et toutes les entités sont chargées.
Si l’on fait un clic droit sur une entité, LinqPad propose de générer des modèles de requête tels que des « Select » ou des « Where »

LinqPad_11.png

Pour créer une requête, il faut ouvrir un tab de Query en allant dans File -> New Query.
Une fois le tab affiché, il faut choisir le langage qu’on va utiliser pour notre expression parmi la liste proposée (VB, C#, SQL, …). Dans notre cas, on choisit VB Expression. Il faut aussi déterminer sur quelle Database on va requêter. On choisit donc le nom de la connexion qu’on a créée précédemment : PPONEW ;PPONEW

LinqPad_12.png

Il ne reste plus qu’à saisir la requête Linq qu’on souhaite effectuer. Prenons un exemple simple :

LinqPad_13.png

Une fois la requête saisie, il faut cliquer le bouton « Play » Vert, ou appuyer sur la touche F5 du clavier.

Le logiciel compile la requête puis l’exécute et affiche le résultat dans le panneau en dessous de la requête :

LinqPad_14.png

L’utilisation est donc très simple, et il n’y a plus qu’à copier – coller le code de la requête dans Visual Studio pour l’utiliser dans notre programme.
Dans mon exemple, j’ai fait que du requêtage, mais il est également possible de faire un « Programme » dans la fenêtre d’édition en sélectionnant C#/VB Programm dans la sélection du langage. Dans ce mode, on peut donc déclarer des variables et faire tout un tas d’opérations. Il suffit d’appeler la méthode Dump() d’une liste pour l’afficher.

LinqPad_15.png

Je trouve donc cet outils très pratique et globalement bien fait, qui permet de gagner pas mal de temps lors de la construction de requête Linq car il évite d’exécuter son programme à chaque fois pour tester.

2 commentaires

  1. http://www.power-id.com

    I image this might be numerous upon the written content material? nevertheless I nonetheless believe that it may be suitable for just about any type of topic material, because it could frequently be pleasant to resolve a warm and delightful face or…

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Captcha *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.