Charger le dropdownlist avec deux tables

Soyez le premier à donner votre avis sur cette source.

Snippet vu 9 201 fois - Téléchargée 16 fois

Contenu du snippet

Avec ASP.NET et SQL 2008 R2

ce bout de code montres comment on peut charger un dropdownlist avec les informations tirées dans deux tables d'une base de donnée.

Source / Exemple :


'----Rappelle: Partie de la connection est de cette forme...
    '
    'MyConn = New System.Data.SqlClient.SqlConnection
    'MyConn.ConnectionString = ConfigurationManager.ConnectionStrings("ApplicationServices").ConnectionString
    'MyConn.Open()
    '
    '--------------------------------------------

    Protected Sub PremiereInfo()
    
        Dim s As Integer
        Dim adapt As New SqlDataAdapter("SELECT Nom1 FROM Table1", MyConn)
        Dim dataset As New DataSet
        adapt.Fill(dataset, "Table1")
        With dataset.Tables("Table1")
            If DropDownList1.Items.Count = 0 Then '--pour vérifier si il y a déjàs des données dans DDL
                For s = 0 To .Rows.Count - 1
                    DropDownList1.Items.Add(.Rows(s).Item("Nom1"))
                Next
                DeuxiemeInfos() '--on appelle la deuxieme table...Içi pour éviter des doublons
            End If
        End With
    End Sub

    Protected Sub DeuxiemeInfos()  
        Dim s As Integer
        Dim adapt As New SqlDataAdapter("SELECT Nom2 FROM Table2", MyConn)
        Dim dataset As New DataSet
        adapt.Fill(dataset, "Table2")
        With dataset.Tables("Table2")

            For s = 0 To .Rows.Count - 1
                DropDownList1.Items.Add(.Rows(s).Item("Nom2"))
            Next

        End With
    End Sub

Conclusion :


C'est ce que j'ai trouvé, une notre méthode? Idée? Correction? un commentaire m'aidera grandement beaucoup
Merci

A voir également

Ajouter un commentaire

Commentaires

hervethebest
Messages postés
7
Date d'inscription
mercredi 15 novembre 2000
Statut
Membre
Dernière intervention
2 juillet 2012
-
salut,

à ta place j' aurais plutôt factoriser la fonction comme ci dessous :

Protected Sub AjouterInfos(ByVal requete_sql as String)
Dim s As Integer
Dim adapt As New SqlDataAdapter(requete_sql, MyConn)
Dim dataset As New DataSet
adapt.Fill(dataset, "Table")
With dataset.Tables("Table")

For s = 0 To .Rows.Count - 1
if (DropDownList1.Items.FindByText(value) is null) then
DropDownList1.Items.Add(.Rows(s).Item("Nom"))
endif
Next

End With
End Sub

A noter le if (DropDownList1.Items.FindByValue(value) is not null) then
pour tester si l' element est deja present dans le dropdownlist.

j' ai traduit directement à partir d' un code en c# alors j' espère que ca va ...
essanousy
Messages postés
2
Date d'inscription
jeudi 12 juin 2014
Statut
Membre
Dernière intervention
23 juin 2014
-
ma suggestion :

Dim adapt As New SqlDataAdapter("SELECT Nom1 FROM Table1 union SELECT Nom2 FROM Table2", MyConn)

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.