cmdDateReceivingStock = new SqlCommand("Select Distinct Date FROM
OrderDetails WHERE item_Received ='No'", conStock);
SqlDataAdapter da = new SqlDataAdapter(cmdDateReceivingStock);
DataSet ds = new DataSet();
da.Fill(ds);
ddlOrderDate.DataTextFormatString = "{0:dd-MM-yyyy}";
ddlOrderDate.DataSource = ds;
ddlOrderDate.DataTextField = "Date";
ddlOrderDate.DataBind();
成功将日期转换为下拉列表后,我收到此错误“转换从字符串转换日期和/或时间时失败。”当我使用日期从数据库中检索数据时。
答案 0 :(得分:3)
你可以尝试
ddlOrderDate.DataTextFormatString = "{yyyy-MM-dd}";
这将为您格式化日期并删除零
答案 1 :(得分:2)
您的SELECT语句没问题,您必须修改ddl中的日期格式:
ddlOrderDate.DataTextFormatString = "{0:dd-MM-yyyy}";
答案 2 :(得分:2)
在sql查询中尝试此操作。
cmdDateReceivingStock = new SqlCommand("Select Distinct CONVERT(VARCHAR,Date,103) FROM
OrderDetails WHERE item_Received ='No'", conStock);
附加阅读:要获得不同的日期和日期时间格式,请参阅此link
答案 3 :(得分:1)
在sql查询中尝试这种方式
SELECT CONVERT(char(10), GetDate(),126)
使用 DATE_FORMAT()
更改您的查询cmdDateReceivingStock = new SqlCommand("Select Distinct DATE_FORMAT(Date , '%d/%m/%Y') FROM
OrderDetails WHERE item_Received ='No'", conStock);
了解更多date formating