2009-02-09 8 views
0

J'ai un formulaire dans lequel je peux lister une table parent en utilisant datagridview. J'ai aussi une table de paiement pour enfants qui liste tous les paiements effectués. J'ai ajouté une liste déroulante afin que je puisse rendre ma recherche plus efficace. Tout a fonctionné très bien jusqu'à ce que j'aie ajouté à la boîte. Maintenant, j'obtiens cette erreur ==Erreur LINQ to SQL

InValidCastException == La conversion de la chaîne "" en type "Double" n'est pas valide.

Pouvez-vous s'il vous plaît helpme corriger cela? J'utilise SQL Server 2005 et Visual Studios 2008.

Dim teamList = De Bowler Dans Db.Bowlers _ Où Bowler.TeamNumber <> "" _ Trier par Bowler.TeamNumber _ Sélectionnez Bowler.TeamNumber Pour chaque TeamNumber Dans teamList Me.ToolStripComboBox1.Items.Add (TeamNumber) Next End Sub

Merci Cheryl

Répondre

2

Je suppose que Bowler.TeamNumber est un double type de données. Cela signifie que vous ne pouvez pas faire

Bowler.TeamNumber <> "" 

au lieu que vous ne pouvez faire

Bowler.TeamNumber <> 0 

ou

Bowler.TeamNumber <> NULL 

EDIT: À la suite de commentaires, vous avez besoin quelque chose comme ceci:

Dim teamList = (From Bowler In Db.Bowlers _ 
Where Bowler.TeamNumber <> "" _ 
Order By Bowler.TeamNumber _ 
Select Bowler.TeamNumber).Distinct() 

For Each TeamNumber In teamList 
Me.ToolStripComboBox1.Items.Add(TeamNumber) 
Next 
+0

Merci beaucoup. Je mets le "0" partout mais là. Ca marche super bien. Je peux maintenant voir les chiffres. Mais, il est en train de doubler les chiffres. Il y a 4 quilleurs par équipe ce qui signifie que le nombre "1" apparaîtra 4 fois. Et il ne remplit pas les grilles avec les informations qui s'y trouvent. Aucune suggestion. heryl –

+0

J'ai mis à jour mon message avec une solution – cjk

+0

Merci. Il ne montre maintenant qu'un seul numéro. Ce n'est toujours pas en train de peupler les tables. Aucune suggestion? –