2011-12-26 60 views
0

我有一個城市的下拉列表,我的數據庫中有一些城市要填充到下拉列表中。從vb.net的下拉列表中添加數據庫中的數據

在頁面上的負荷降負荷我有做工精細的查詢的下降做出了SQL連接

Dim s As String = "Connection String" 
sqlconn = New SqlConnection(s) 

現在。如何將數據庫查詢結果添加到下拉菜單中?

Protected Sub Citydropdown_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Citydropdown.Load 

     sqlCmd = New SqlCommand("select City from usrRegister_aunthentication", sqlconn) 
     If sqlconn.State = Data.ConnectionState.Closed Then 
      sqlconn.Open() 
     End If 
     Dim i As String = sqlCmd.ExecuteReader() 

     If sqlconn.State = Data.ConnectionState.Open Then 
      sqlconn.Close() 
     End If 
    End Sub 

此外,有時在同一個城市重複。我如何只顯示每個城市一次?

+0

專業提示:如果你在你的問題中加入更多的工作,你會得到更好的答案。請參閱編輯以瞭解哪些答案的使用者更容易。另外,我希望你支付更多關注代碼細節的內容,而不是你在這裏提出的問題。 – 2011-12-26 17:30:34

回答

2

請勿使用ExecuteNonQuery來獲取結果(行)。使用ExecuteReader來獲取閱讀器實例。

Dim dataReader as SqlDataReader 
dataReader = sqlCmd.ExecuteReader() 
While dataReader.Read 
    ' Write code to insert an Item into dropdownlist 
    DropDownItem1.Items.Add(dataReader("City").ToString()) 
End While 
dataReader.Close() 
+0

,我已編輯,但我有什麼代碼wrtie以填充下拉列表中的數據,哪些代碼應該寫在while循環? – 2011-12-26 05:43:18

+0

和更多的OVA,當我使用ExecuteReader它說SqldataReader不能被轉換爲字符串 – 2011-12-26 05:45:42

+0

thanx現在爲我工作 – 2011-12-26 05:56:43

0

你也可以試試這個。這是一條或兩條線。

Using dr = sqlCmd.ExecuteReader() 
While dr.Read 
    ' Write code to insert an Item into dropdownlist 
    DropDownItem1.Items.Add(dr("City").ToString()) 
End While 
End Using 
相關問題