Bonsoir tous le monde,

J'ai un petit probleme que j'aimerais partager avec vous pour me donner des idées.

Voila j'ai les tables suivantes:
dossier(numD,type,nom,.....)
Topo_archite(idTopo,nom,prenom,....)
affectation(numD,idTopo)
La table affectation est une relation entre les deux tables précédentes.j'insère dans une transaction les données de dossier.pour la table Topo_archite deja remplie.j'ai crée une liste déroulante pour sélectionner les nom des achitectes pour le dossier et je les ajoute avec un button dans une Listechoix.

J'ai pensé à crée une fonction qui retourne les valeurs des personnes sélectionné dans la liste:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
 Function id_topo_archi()
        Dim valeur1 As Int16
        Dim valeur2 As Int16
        If RadioTopo.Checked = True Then
            For Each i In TopoList.Items
                valeur1 = TopoList.SelectedValue
            Next
            Return valeur1
        End If
        If RadioArchi.Checked = True Then
            For Each i In ArchiList.Items
                valeur2 = ArchiList.SelectedValue
            Next
        End If
        Return valeur2
    End Function
Apres je fait appelle à la fonction dans ma requete :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
commande.CommandText = "INSERT INTO affectation ([num_dossier],[id_topo_archi]) VALUES(@num_dossier,@id_topo_archi)"
            commande.Parameters.AddWithValue("@num_dossier", Convert.ToString(NumD.Text))
            commande.Parameters.AddWithValue("@id_topo_archi", Convert.ToInt16(id_topo_archi()))
            commande.ExecuteNonQuery()
ça marche mais il retourne une seule valeur meme que j'ai selectioné plusieurs valeurs dans la liste deroulante,c.a.d il insere juste un id dans la table affectation.
Si vous pouvez m'aider à faire mieux et insérer tous les valeurs sélectionné merci .