今天在使用LINQ時,由于數據庫中的時間保存的是varchar()格式,查詢時需要比較時間先后,于是使用了:
復制代碼 代碼如下:
from j in system.jhzd
where j.dwbm.ToString().Trim() == branchcode.ToString().Trim()
Convert.ToDateTime(j.yearmonth.ToString().Trim()).CompareTo(Convert.ToDateTime(timeFrom)) >= 0
Convert.ToDateTime(j.yearmonth.ToString().Trim()).CompareTo(Convert.ToDateTime(timeTo)) = 0
join b in system.t_sys_Branch
on j.dwbm.ToString().Trim() equals b.BranchCode
join c in system.T_CWLB
on j.xmlb.ToString().Trim() equals c.ID
select new
{
BranchName = b.BranchName,
category = c.CWMC,
money = j.je,
comefrom = j.zjly,
time = j.yearmonth,
zhaiyao = j.zhaiyao,
}
可是,使用時卻發現數據庫報 "從字符串向 datetime 轉換時失敗"。
試了很多方法,仍沒有用,最終發現,數據庫中yearmonth這個字段的字符串保存的是"2013年01月04日",
當把它改成"2013-01-04"時,發現查詢正常,有效。
您可能感興趣的文章:- sql語句中如何將datetime格式的日期轉換為yy-mm-dd格式
- 將WMI中的DateTime類型轉換成VBS時間的函數代碼
- 時間字符串轉換成日期對象datetime的方法
- Sql中將datetime轉換成字符串的方法(CONVERT)
- Python中實現對Timestamp和Datetime及UTC時間之間的轉換
- C#、.Net中把字符串(String)格式轉換為DateTime類型的三種方法
- Java 和 Javascript 的 Date 與 .Net 的 DateTime 之間的相互轉換