将SQL语句的结果转换为列表

Los*_*n90 3 c# sql

我试图将SQL语句的结果放入窗体上的组合框中.我已经在网上搜索了一个答案,我不能比这更进一步:

using (SqlCeConnection c = new SqlCeConnection(
 Properties.Settings.Default.CW2_DBConnectionString))
{
    c.Open();

    List<Visit> rows = new List<Visit>();

    SqlCeCommand cmd = c.CreateCommand();
    cmd.CommandText = "SELECT PICKUP_ID FROM PICKUP";

    c.Open();
    cmd.ExecuteNonQuery();

    SqlCeDataReader reader = cmd.ExecuteReader();

    while (reader.Read())
    {

    }

    cmbPickupID.Items.Add(rows);
}
Run Code Online (Sandbox Code Playgroud)

我不确定在while循环中放入什么.我确实有类似的东西:

rows.Add(reader["PICKUP_ID"].ToString());
Run Code Online (Sandbox Code Playgroud)

但显然它没有用.Visit类已设置并获取VisitID.有没有人有任何想法?

Tho*_*and 5

首先:你不需要 cmd.ExecuteNonQuery();

其次:如果你的Visit类有一个属性PICKUP_ID,并且你正在使用一个Visit项目列表,那么你需要Visits在列表中添加实际值,而不仅仅是字符串,如下所示:

rows.Add(new Visit () {pickupid = reader["PICKUP_ID"].ToString()});
Run Code Online (Sandbox Code Playgroud)

如果你只需要id,那么你也可以做一个List<string>.您发布的代码将起作用.