使用文字显示查询的结果
本文关键字:结果 查询 显示 文字 | 更新日期: 2023-09-27 18:02:45
我试图在asp.net c#中显示从查询到文字的多行。下面是我的代码:
protected void Page_Load(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection(WebConfigurationManager.ConnectionStrings["RaiseFantasyLeagueConnectionString"].ConnectionString);
SqlCommand cmd = new SqlCommand("[dbo].[GetUsersLeagues]", conn);
cmd.CommandType = CommandType.StoredProcedure;
string userId = Membership.GetUser().ProviderUserKey.ToString();
SqlParameter userIDParam = new SqlParameter("@userId", userId);
cmd.Parameters.Add(userIDParam);
conn.Open();
SqlDataReader dReader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
while (dReader.Read())
{
usersLeagues.Text = (dReader["LeagueName"].ToString());
}
dReader.Close();
conn.Close();
}
我的问题是文字只显示其中一行,我已经用列表框尝试过了,所有的行都显示了。
有什么建议吗?
提前感谢!
您在每次迭代中替换Text
属性的值:
while (dReader.Read())
{
usersLeagues.Text = (dReader["LeagueName"].ToString());
}
相反,您需要连接每次迭代的值:
while (dReader.Read())
{
usersLeagues.Text += (dReader["LeagueName"].ToString()) + Environment.NewLine;
}
在上面的例子中,使用+=
会导致对usersLeagues.Text
的当前值进行追加,而不是替换。