Я пытаюсь получить данные из базы данных с помощью SqlDataReader и отобразить их в элементе управления ListBox.В моей базе данных есть две таблицы Genre (Id, Name) и Review (Id, Title, GenreId).Мой код C # выглядит следующим образом:
try
{
using (SqlConnection connection =
new SqlConnection(@"Server=" + txtServerName.Text + ";Database=" + txtDatabase.Text + "; Integrated Security=SSPI"))
using (SqlCommand command =
new SqlCommand("Select Genre.Name, Review.Title " +
"From Genre Inner Join Review " +
"On Genre.Id = Review.GenreId;", connection))
{
connection.Open();
MessageBox.Show("Connected successful!");
using (SqlDataReader reader = command.ExecuteReader())
{
while (reader.Read())
{
string sFormat = String.Format("Name: {0} Title: {1}", reader.GetString(0), reader.GetString(1));
// adding data to ListBox
lst.Items.Add(sFormat);
}
}
}
}
catch (Exception ex)
{
MessageBox.Show("Error: " + ex.Message);
}
При выполнении кода выше, я получил только столбец Имя, а столбец Название не появляется.Но если я изменил переменную sFormat следующим образом:
string sFormat = String.Format("Title: {0} Name: {1}", reader.GetString(1), reader.GetString(0));
, я получил и столбец Имя, и столбец Название.
Не знаю почему?Пожалуйста, помогите мне!