Share via


Trucs et astuces pour Visual Studio 2008 / Visual Basic 2008 / Visual C# 2008 : Partie 3

 

Sommaire de la troisième partie

 

VB Aide à l’initialisation d’objets
VB Surchargez la méthode .ToString de vos objets
VB Filtrez vos données grâce à LINQ
VStudio Facilitez l’écriture de vos structures LINQ avec VLINQ

 

 

<< Retour à la deuxième partie

 

Partie 3 : les Objets, LINQ et VLINQ

 

VB

Aide à l’initialisation d’objets

Après avoir référencé la librairie EmployeLib au sein de votre projet Winform, saisissez le code suivant :

Object Code

Observez le résultat, vous constaterez un soulignement sous Employe vous proposant ainsi une aide contextuelle :

Object Code

Cliquez ainsi sur Import ’EmployeLib’ afin de constater que Visual Studio aura ajouté automatiquement la référence au NameSpace en marge de votre classe.

Object Code

Cette première étape terminée, il nous faut maintenant alimenter notre listbox des items créés dans le Generics d’employe.  Pour ce faire, ajoutez le code suivant à votre formulaire :

    Private Sub Form1_Load(ByVal sender AsObject, ByVal e As System.EventArgs) HandlesMe.Load        empList = EmployeMgr.EmployeList        ListBox1.Items.AddRange(empList.ToArray)    End Sub

 

Haut de page

VB

Surchargez la méthode .ToString de vos objets

Vous constaterez après la compilation que l’affichage des items sont bien liés à la listbox mais que ceux-ci n’apparaissent qu’en tant que type. Effectivement, la problématique dans ce cas est que lors du binding des items vers la listbox, le Runtime du .NET Framework récupère la conversion string de chaque item. Il nous faudra ainsi surcharger la méthode .ToString de notre objet Employe (cette méthode est héritée du type System.Object). Ajoutez ainsi le code suivant à la classe Employe :

   Public Overrides Function ToString() As String        Return Me.Nom & " " & Me.Prenom & " " & Me.Salaire   End Function

Une nouvelle compilation de votre code vous permettra de vous rendre compte que le résultat escompté est maintenant obtenu.

Compilation Results

 

Haut de page

VB

Filtrez vos données grâce à LINQ

Derrière la fonctionnalité attachée au bouton de filtrage (Filtrer), ajoutez une fonctionnalité de tri des données basée sur le montant du salaire saisi par l’utilisateur de l’application sachant que nous ne travaillons pas sur la notion de Cast qui resterait à contrôler. Pour cela, double-cliquez sur le bouton de filtrage depuis son interface graphique et ajoutez le code suivant à la méthode créée automatiquement par Visual Studio 2008 :

    Private Sub btFilter_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btFilter.Click                 Dim filterList = From emp In empList _                         Where emp.Salaire <= tbFilter.Text                 ListBox1.Items.Clear()                 ListBox1.Items.AddRange(filterList.ToArray)    End Sub

Lors de la saisie de votre structure LINQ, vous aurez certainement remarqué l’apparition d’un  SyntaxTip vous affichant la structure du code à saisir :

Syntax Tip

L’exécution de cette nouvelle méthode vous permet en quelques lignes de filtrer vos données.  Vous auriez pu également transformer la sortie en effectuant une projection au sein de votre structure LINQ (Select) et obtenir ainsi le code suivant :

    Dim filterList = From emp In empList _                 Where emp.Salaire <= tbFilter.Text _                 Select emp.Nom, emp.Salaire    ListBox1.Items.Clear()    ListBox1.Items.AddRange(filterList.ToArray)

Cette seconde structure LINQ a en fait créé un type anonyme afin de représenter le résultat de votre requête ; de votre projection plus particulièrement.

 

Haut de page

VB

Facilitez l’écriture de vos structures LINQ avec VLINQ

Le langage LINQ étant encore assez récent et de ce fait réservé aux Early-Adopters, l’équipe de Microsoft France et plus particulièrement M. Mitsu Furuta ont mis en œuvre un Add-In non négligeable puisque celui-ci, créé en WPF, vous permet de créer par interface intuitive vos structures LINQ.

VLINQ add-on

Retrouvez de plus amples informations à l’adresse suivante : http://blogs.developpeur.org/redo/archive/2008/04/17/visual-linq-query-builder-vlinq-un-tool-ne-surtout-pas-manquer.aspx  

Je ne m’étalerai pas plus sur cet outil puisque toutes les informations relatives à son exploitation se trouvent en ligne.

Section suivante >>

 

Haut de page