如何从同一个表中的两个不同列读取数据并返回字符串生成器?

时间:2013-04-20 17:21:42

标签: c# asp.net

我在从同一数据库表中的两个不同列读取数据时遇到问题。 (抱歉我的英语不好。)

String status = "1";

SqlConnection conn = new SqlConnection("Server=localhost;Integrated Security=true;database=WebsiteDatabase");
conn.Open();
SqlCommand cmdname = conn.CreateCommand();
cmdname.CommandText = "select product, quantity from tlbOrder where status = '1'";

//get product name and quantity
cmdname.Parameters.Add("@status", status);
SqlDataReader dr = cmdname.ExecuteReader();
StringBuilder sb = new StringBuilder();
while (dr.Read())
{
    sb.AppendFormat("{0}, ", dr[0].ToString());
}


label1 = ""+sb.ToString();

但是,只返回“产品”详细信息。

预期结果:带有产品名称+数量字符串的标签(例如笔记本电脑1,键盘3,扬声器5)等。

1 个答案:

答案 0 :(得分:5)

嗯,向AppendFormat

添加另一个参数没有问题
while (dremail.Read())
{
    sb.AppendFormat("{0}, {1}", dr[0].ToString(), dr[1].ToString());
}

但是,您的代码会尝试在同一标签中插入可能很长的产品列表 也许更好的方法应该是使用List或GridView