C# 使用实体框架将字符串转换为日期时间

C# 使用实体框架将字符串转换为日期时间,c#,linq,entity-framework,linq-to-entities,type-conversion,C#,Linq,Entity Framework,Linq To Entities,Type Conversion,我有一个成员表,其中有一列包含出生日期;默认情况下,dateofbirth列的数据类型为varchar 如何使用实体框架将字符串转换为日期时间 我试过这样的方法: let dob = eclipse.members.Take(1) .Select(x => report.member_Dob) .Cast<DateTime>()

我有一个成员表,其中有一列包含出生日期;默认情况下,dateofbirth列的数据类型为varchar

如何使用实体框架将字符串转换为日期时间

我试过这样的方法:

let dob = eclipse.members.Take(1)
                         .Select(x => report.member_Dob)
                         .Cast<DateTime>()
                         .FirstOrDefault()
但它对我不起作用,我无法更改模式。

这是怎么回事:

let dob =eclipse.members.Take(1).Select(x=> DateTime.Parse(report.member_Dob)).FirstOrDefault();

这个怎么样:

let dob =eclipse.members.Take(1).Select(x=> DateTime.Parse(report.member_Dob)).FirstOrDefault();

很遗憾,L2E不支持任何字符串到日期时间的转换。有两种解决方法,例如解析字符串和在Linq查询中创建一个DateTime对象进行比较,但这些方法既冗长又难看


我建议尽可能创建L2E查询,然后使用Linq to Objects返回最终的数据集。

不幸的是,L2E不支持任何字符串到日期时间的转换。有两种解决方法,例如解析字符串和在Linq查询中创建一个DateTime对象进行比较,但这些方法既冗长又难看


我建议尽可能创建L2E查询,然后使用Linq to Objects返回最终的数据集。

检查此项检查此错误。…Linq to Entities无法识别“System.DateTime ToDateTimeSystem.String”方法,并且无法将此方法转换为存储表达式名称错误…..LINQ to Entities无法识别方法“System.DateTime ToDateTimeSystem.String”,并且无法将此方法转换为存储表达式