date
我的SQL 数据库中有一个包含该类型的列。如何将其转换为 C#DateTime
然后再转换回 SQL date
?
问问题
52964 次
3 回答
12
可以将sqlDATE
直接转换为 .net DateTime
,反之亦然。
要获取它,请使用SqlDataReader.GetDatetime 方法
DateTime myDate = myDataReader.GetDateTime(myColumnIndex);
要设置它,只需将其分配给SqlParameter的值并使用.Date
DateTime 的属性
于 2013-05-19T14:13:13.300 回答
8
c#从读者那里获取日期
DateTime date1;
DateTime.TryParse(reader["datecolumn"], out date1);
插入日期
string date1="2013-12-12";
DateTime date2;
DateTime.TryParse(reader["datecolumn"],out date2);
SqlCommand cmd= new SqlCommand("Insert into table (dateColumn) Values(@date2)",connection);
cmd.Parameters.AddWithValue("@date2",date2.Date);
TryParse 在成功转换为 false 时返回 true,否则。
VB
从读者那里获取日期
Dim date1 as Date=CType(reader("dateColumn"),Date)
插入日期
Dim date1 as String="2013-12-12" 'you can get this date from an html input of type date
Dim cmd As New SqlCommand("Insert into table (dateColumn) Values(@date1)",connection)
cmd.Parameters.AddWithValue("@date1",CType(date1, Date))
注意:代码是用 VB 编写的。您可以轻松编写与上述代码等效的 c#。函数名称在 VB 和 c# 中保持不变。CType 在 c# 中也不可用(尽管它与显式转换变量相同,例如。date1=(DateTime)reader("dateColumn");
我建议使用TryParse
which 在不成功的解析/转换时不会引发任何异常。
句法
Date.TryParse(reader("dateColumn"), date1)
于 2013-05-19T13:47:33.410 回答
3
string mydate= Convert.ToDateTime(reader["dateColumn"]).ToShortDateString().ToString());
这些代码对我有用。试试这些
于 2015-12-18T05:45:29.860 回答