3

以下のようなクエリを実行する必要があります。実際にはもっと複雑ですが、重要な部分は次のとおりです。

var results =
    from b in _context.Bookings
    where b.ScheduleDate.Add(b.StartTime) >= DateTime.UtcNow
    select b;

しかし、次のエラーが発生します。

LINQ to Entities はメソッド 'System.DateTime.Add method(System.TimeSpan)' を認識せず、このメソッドをストア式に変換できません。

どうすればこれを回避できますか?

前もって感謝します。

4

2 に答える 2

7

SqlFunctionsMicrosoft Sql Server でのみ機能します。

純粋な EF では、次のように記述できます。

DbFunctions.AddMilliseconds(x.Date, DbFunctions.DiffMilliseconds(TimeSpan.Zero, x.Time))

これはすべてのデータベース アダプタで機能します。

于 2015-12-17T23:16:17.200 に答える