Как извлечь данные из двух столбцов, объединенных в базу данных, и отобразить их в выпадающем списке? - PullRequest
0 голосов
/ 27 января 2019

У меня есть таблица -> класс - id, дата, время, примечание
В моем приложении asp.net я хочу отображать дату + время вместе в выпадающем списке.
ПРИМЕЧАНИЕ. Время указывается в строковом формате (т. Е. 9:00 - 11:00, 12:30 - 1:00)
Я не уверен, выполнимо ли это. Пожалуйста, сообщите мне.

В настоящее время мне удается отображать только дату. Пожалуйста, смотрите код ниже

        con.Open();
        SqlCommand com = new SqlCommand("Select id,Date,Time from class", con);
        com.ExecuteNonQuery();
        DataTable dt = new DataTable();
        SqlDataAdapter dA = new SqlDataAdapter(com);
        dA.Fill(dt);
        dd1.DataSource = dt;
        dd1.DataTextField = "Date"; //want to show date and time
        dd1.DataValueField = "id";
        dd1.DataBind();
        con.Close();

Ожидаемые результаты - «12/01/2019 9: 00-11: 00»

Ответы [ 3 ]

0 голосов
/ 27 января 2019

Какую базу данных вы используете?

В SQL Server вы можете использовать следующий запрос:

SELECT id, CONVERT(VARCHAR, Date , 3) + ' ' + Time AS Date 
FROM class

Другой код останется прежним.

0 голосов
/ 27 января 2019

Предполагая, что вы используете сервер SQL, вы можете изменить свой запрос следующим образом:

SELECT ID, CONVERT(char(10), Date, 103) + ' ' + Time [Date]
FROM class

И использовать столбец Date в качестве вашего DataTextField

0 голосов
/ 27 января 2019

Попробовал ниже код и работает сейчас:

con.Open();
sql = @ "SELECT Date + ' ' + Time AS Session, id, remark FROM class ORDER BY Session ASC;";
SqlCommand com = new SqlCommand(sql, con);
com.ExecuteNonQuery();
DataTable dt = new DataTable();
SqlDataAdapter dA = new SqlDataAdapter(com);
dA.Fill(dt);
dd1.DataSource = dt;
dd1.DataTextField = "Session";
dd1.DataValueField = "id";
dd1.DataBind();
con.Close();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...