我正在尝试将一些代码从EF6转换为EF Core 1 RC1,而我被困在需要使用linq在服务器端将日期与当前日期进行比较的时候。查询的另一部分是获取这些日期的星期几。
EF6代码使用SqlFunctions类,该类完全符合System.Data.Entity.SqlServer.SqlFunctions的要求,但afaik尚未移植到新版本。
建议采用什么方法或将其保持在EF Core上的替代方法?
原始linq to实体查询如下所示:
var result = db.Logs.Select(log => new {
Date = log.Date,
Rel = System.Data.Entity.SqlServer.SqlFunctions.DateDiff("day", log.Date, System.Data.Entity.SqlServer.SqlFunctions.GetDate()),
Dow = System.Data.Entity.SqlServer.SqlFunctions.DatePart("dw", log.Date) - 1
});
最佳答案
目前,不支持Sql Functions,这是 Unresolved 问题
Provide standard LINQ methods that correspond to standard SQL operations (something like DbFunctions from EF6)
您可以尝试以下替代方法:
关于asp.net-core - 使用EntityFramework Core和linq对实体在服务器端比较今天的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36553834/