2013-08-07 100 views
2

我想從我的命名錶中同時獲得policeid全名PoliceAccount手柄列等於下拉列表的值,然後把值轉換爲標籤和顯示器它。通過使用下面提供的代碼,我不斷得到最後一行數據policeid全名的結果。但是,我的表格包含2個警察帳戶,其中列處理等於下拉列表的值。幫助我。謝謝!使用while循環SqlDataReader的

conn.Open(); 
sql = "Select policeid, fullname From PoliceAccount Where handle = '"+ ddlReportDateTime.SelectedValue +"'"; 
    using (var cmd2 = new SqlCommand(sql, conn)) 
    { 
     SqlDataReader dr; 
     dr = cmd2.ExecuteReader(); 

     while (dr.Read()) 
     { 
      String policeid = dr.GetString(0); 
      String fullname = dr.GetString(1); 
      String result = policeid + " " + fullname; 
      lblAssignTo.Text = result; 
     } 
    } 
conn.Close(); 

回答

3

你得把值插入到一個集合(列表或左右):

var myData = new List<string>(); 
    while (dr.Read()) 
    { 
     String policeid = dr.GetString(0); 
     String fullname = dr.GetString(1); 
     String result = policeid + " " + fullname; 
     myData.Add(result); 
    } 

,然後只要你想使用它 - 顯示第一個/最後一個/連鎖/等....

編輯:

顯示串聯的字符串:

yourLabel.Text = myData.Aggregate((x,y)=> x + "; " + y); 
+0

我如何獲得所有結果並將其顯示到標籤上? – XiAnG

+0

myData是從數據庫中檢索的字符串列表。將它們全部顯示在串聯的字符串中 - 請參閱編輯部分 – Rex