Я использую DataTable для заполнения раскрывающегося списка в моей веб-форме, а также использую хранимую процедуру для запроса базы данных. Список извлекает только одно поле из базы данных и будет использоваться в сочетании с представлением сетки для просмотра всех бронирований, сделанных на определенную дату.
Все работает нормально, кроме формата даты. Сейчас он показывает дату, а также часы, минуты и секунды. Я попытался использовать свойство DataFormatString в веб-форме, но безуспешно.
Веб-форма:
<b>Please select a date:</b>
<asp:DropDownList ID="ddlDateSelection" runat="server" DataFormatString="{0:MM/dd/yyyy}"></asp:DropDownList>
<br />
<asp:Label ID="lblError" runat="server" CssClass="validate"></asp:Label>
код, используемый для запроса базы данных:
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
loadDates();
}
protected void loadDates()
{
DataTable dates = new DataTable();
using (SqlConnection con = new SqlConnection(DBAccess.GetConnectionString()))
{
SqlCommand cmd = new SqlCommand("usp_sel_ReservationDates", con);
cmd.CommandType = CommandType.StoredProcedure;
try
{
SqlDataAdapter adapter = new SqlDataAdapter(cmd);
adapter.Fill(dates);
ddlDateSelection.DataSource = dates;
ddlDateSelection.DataTextField = "ReservationDate";
ddlDateSelection.DataBind();
}
catch (Exception ex)
{
lblError.Text = "Something bad has happened. Please try again.<br />Message: " + ex;
}
}
ddlDateSelection.Items.Insert(0, new ListItem("Please Select", "0"));
}
Любая помощь будет принята с благодарностью, так как это учебный проект для меня. Спасибо