如何使用Entity Framework 4 Canonical Functions获取CurrentDateTime()和AddDays()?

时间:2012-03-09 18:23:52

标签: mysql entity-framework-4

我正在使用Entity Framework 4和MySql.Data.MySqlClient提供程序。

我可以知道http://msdn.microsoft.com/en-us/library/bb738563(v=vs.100).aspx中列出的CurrentDateTime()在哪里?

我尝试过命名空间System.Data.Metadata.Edm和System.Data.Objects,但没有运气......

UPDATE :我刚刚发现我可以使用DateTime.Now而不是CurrentDateTime()作为数据库时间。它将被翻译成查询中的NOW()。

现在的问题是EntityFunctions.AddDays()不起作用。它没有被翻译成正确的ADDDATE()而是AddDays()。这是否意味着MySql不支持Canonical Functions? (MySql connector net 6.5.4)

3 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

如果是ESQL,您只需使用"CreateDateTime(...)"。如果是Linq-to-Entities,您将使用:System.Data.Objects.EntityFunctions.CreateDateTime(...)

答案 2 :(得分:0)

您可以使用此查询使用实体框架从MySql服务器获取sysdate

DateTime _serverDate=dbContext.CreateQuery<DateTime>("CurrentDateTime() ").AsEnumerable().First();