当前位置:编程学习 > C#/ASP.NET >>

Linq to sql中有將string轉換成datetime的方法嗎?

sql: select datediff(dd,convert(datetime,'2010/11/2'),GETDATE())
換成Linq:
var pcrDetail = from p in db.PcrDetail
                        where new string[] { "Open", "Reject" }.Contains(p.Task_Status) && !p.Project_No.ToLower().StartsWith("tmp")
                        && SqlMethods.DateDiffDay(SqlMethods.DateDiffDay( DateTime.Now) >= minDay && SqlMethods.DateDiffDay(DateTime.Parse(p.Task_DueDate), DateTime.Now) <= maxDay
                        select p;
        int j = 0;

報錯:說Linq to sql不支持在裏面直接寫DateTime.Parse(p.Task_DueDate).

請問這裡應該怎樣寫(不在外面再定義時間格式的參數)?
--------------------编程问答-------------------- 自己已解決.
Linq to sql不支持DateTime.Parse(p.Task_DueDate)這種寫法
但支持System.Convert.ToDateTime(p.Task_DueDate)這種寫法 --------------------编程问答--------------------
支持LZ~~给分把…………………………………………………… --------------------编程问答-------------------- 转下就好了吧.
--------------------编程问答-------------------- 使用 Convert.ToDateTime()

不要使用 DateTime.Parse() --------------------编程问答--------------------
引用 4 楼 q107770540 的回复:
使用 Convert.ToDateTime()

不要使用 DateTime.Parse()

++ --------------------编程问答--------------------
引用 5 楼 wxr0323 的回复:
引用 4 楼 q107770540 的回复:

使用 Convert.ToDateTime()

不要使用 DateTime.Parse()

++

+++ --------------------编程问答--------------------
引用 4 楼 q107770540 的回复:
使用 Convert.ToDateTime()

不要使用 DateTime.Parse()


up --------------------编程问答-------------------- --------------------编程问答-------------------- 不行啊!
LINQ to Entities does not recognize the method 'System.String ToString(System.String)' method, and this method cannot be translated into a store expression.  --------------------编程问答--------------------
引用 4 楼  的回复:
使用 Convert.ToDateTime()

不要使用 DateTime.Parse()

++2 --------------------编程问答-------------------- 楼主是想问sql中如何将string类型转换为datetime类型吗?看下面的方法:

//最关键的语句:cast(TestTime as datetime)
select cast(TestTime as datetime) from TestTable// 其中TestTime为String类型,查询的时候转换为datetime类型了

--------------------编程问答--------------------
引用 9 楼  的回复:
不行啊!
LINQ to Entities does not recognize the method 'System.String ToString(System.String)' method, and this method cannot be translated into a store expression.

Linq to EF 不认 Convert.ToDateTime
可在 db.表名 后加上.ToList()即可
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,