C# 从SQL读取到textblock
应用程序-一个文本块,一个按钮+SQL数据库-一个表。 当我点击按钮时,我正在尝试从sql读取文本块,但它不起作用C# 从SQL读取到textblock,c#,sql,wpf,C#,Sql,Wpf,应用程序-一个文本块,一个按钮+SQL数据库-一个表。 当我点击按钮时,我正在尝试从sql读取文本块,但它不起作用 private void nextButton_Click(object sender, RoutedEventArgs e) { GetSqlData(); } private void GetSqlData() { string connectionString = @"Data Source=Jama-Dhar
private void nextButton_Click(object sender, RoutedEventArgs e)
{
GetSqlData();
}
private void GetSqlData()
{
string connectionString = @"Data Source=Jama-Dharma\sqlexpress;Initial Catalog=Cars;Integrated Security=True";
SqlConnection sqlConnection = new SqlConnection(connectionString);
using (sqlConnection)
{
string sqlQuery = @"SELECT c.Name FROM CarsCatalog c";
SqlCommand sqlCommand = new SqlCommand(sqlQuery, sqlConnection);
sqlConnection.Open();
SqlDataReader sqlReader = sqlCommand.ExecuteReader();
while (sqlReader.Read())
{
nameTextBlock.Text = sqlReader.GetString(0);
}
sqlConnection.Close();
}
}
如何在单击按钮时,从SQL获取下一个ID值。快速浏览一下,您的while循环似乎刚刚覆盖了文本块。退出循环后更新文本块文本。试试像这样的东西
var sb = new StringBuilder();
while (sqlReader.Read())
{
sb.AppendLine(sqlReader.GetString(0));
}
nameTextBlock.Text = sb.ToString();
您可以保存到现在为止获得的最后一个ID,并获取大于此保存ID的下一个ID。 e、 g: “不起作用”并不是一个可以接受的问题描述——什么不起作用?会发生什么?您的数据是什么样子的?编辑您的问题,以包含有关您可能遇到的任何错误的更多数据。
using (var sqlConnection = new SqlConnection(...))
{
string sqlQuery = @"SELECT c.Name,c.ID FROM CarsCatalog c where c.ID > "
+ lastID.ToString();
SqlCommand sqlCommand = new SqlCommand(sqlQuery, sqlConnection);
sqlConnection.Open();
SqlDataReader sqlReader = sqlCommand.ExecuteReader();
if (sqlReader.Read())
{
nameTextBlock.Text = sqlReader.GetString(0);
lastID = sqlReader.GetInt(1);
}
}