C# 日期时间加载
我正在尝试将此输出放在我的标签中 示例:2016年4月20日 但我得到的是2016年4月20日1200:00:AM 我试图修改它,但无法找出这个错误 方法的无重载包含1个参数 由该代码引起的 这是全部代码C# 日期时间加载,c#,asp.net,C#,Asp.net,我正在尝试将此输出放在我的标签中 示例:2016年4月20日 但我得到的是2016年4月20日1200:00:AM 我试图修改它,但无法找出这个错误 方法的无重载包含1个参数 由该代码引起的 这是全部代码 private void GetData() { SqlConnection con = new SqlConnection("Data Source = localhost\\SQLEXPRESS;Initial Catalog = MejOnlineManagem
private void GetData()
{
SqlConnection con = new SqlConnection("Data Source = localhost\\SQLEXPRESS;Initial Catalog = MejOnlineManagementDB00;Integrated Security=True;");
con.Open();
SqlCommand cmd = new SqlCommand(@"SELECT orderProdName,orderProdType,orderQuantity,orderStatus,orderDateOrdered
FROM orders2
WHERE orderCustomer='"+DropDownList1.SelectedItem.Value.ToString()+"'",con);
SqlDataReader rdr = cmd.ExecuteReader();
if (rdr.HasRows)
{
while (rdr.Read())
{
lblProdName.Text = rdr.GetValue(0).ToString();
lblProdType.Text = rdr.GetValue(1).ToString();
lblQuantity.Text = rdr.GetValue(2).ToString();
lblStatus.Text = rdr.GetValue(3).ToString();
lblDate.Text = rdr.GetValue(4).ToString("MMMM d,yyyy");
}
}
con.Close();
}
rdr.GetValue(int32)
方法返回一个对象,而不是DateTime
将返回的值解析为DateTime
对象,然后使用ToString
方法。问题是您正在使用该方法。此方法没有参数。如果要将其转换为日期,可以尝试以下操作:
DateTime dt = DateTime.Parse(rdr.GetValue(4).ToString())
lblDate.Text = dt.ToString("MMMM d,yyyy");
编辑:
请注意,如果数据库中的date列包含null值,parse方法将抛出异常。所以测试null是强制性的
String s = Convert.ToString(rdr.GetValue(4));
if(!String.IsNullOrEmpty(s))
{
DateTime dt = DateTime.Parse(s);
lblDate.Text = dt.ToString("MMMM d,yyyy");
}
这仅适用于DateTime值,您可以先在DateTime中转换该值:
lblDate.Text = Convert.ToDateTime(rdr.GetValue(4)).ToString("MMMM d,yyyy");
lblDate.Text = Convert.ToDateTime(rdr.GetValue(4)).ToString("MMMM d,yyyy");