1

ここでの日付の比較で何が間違っている可能性があるか教えてもらえますか?

「s.SwipeDateTime.Value.Dateを参照する」位置60のタイプ「Edm.DateTime」にプロパティ「Date」が存在しません

        var lastSwipe = (from s in this.DataWorkspace.ApplicationData.EmployeeSwipeLogs
                         where s.Employee.Id == emp.Id &&
                         s.SwipeIsValid == true &&
                         s.SwipeDateTime.Value.Date == DateTime.Today
                         orderby s.SwipeDateTime descending
                         select s).FirstOrDefault();
4

3 に答える 3

1

簡単に言えば、使用している LINQ プロバイダーはおそらくサポートしていませんConvert.ToDateTime。そもそも何型s.SwipeDateTime?すでにDateTimeになっている場合は、そもそも変換する必要はありません。そうでない DateTime場合は、おそらく変換する必要があります。DateTime.Todayの代わりに使用できることに注意してくださいDateTime.Now.Date。個人的には、クエリの前に移動します。

于 2012-10-01T14:42:41.237 に答える
1

エンティティ関数も役立つ場合があります。これらを使用すると、他の方法では使用できないいくつかのメソッドを使用できます。

以下を追加する必要があります。

  • プロジェクト内のSystem.Data.Entity (System.Data.Entity.dll 内)へのアセンブリ参照
  • 関数を使用しているクラスの Imports/using System.Data.Objectsステートメント
于 2012-10-02T02:47:07.830 に答える
1

Entity フレームワークを使用している場合、EDM.DateTime には .Date プロパティがありません。使用できるメソッドについては、EDM.DateTimeを確認してください。

于 2012-10-01T15:19:22.760 に答える