0

可能かどうかはわかりませんが、MS SQL データベースのレコードをフィルタリングするために日付のみを使用するために半日試してみたところ、この質問にたどり着きました。私はリポジトリパターンを使用しているので、エンティティのすべてのレコードを次のように取得します:

var rows = DocumentsRepository.All();

テーブルDocumentsにはdatetime型の列Dateがあり、データベースに時間を保持する必要がありますが、フィルタリングの準備をするときに日付のみを使用し、可能であれば時間、分、秒、およびミリ秒をゼロに設定したいと考えています。

LINQ内でそれを行うことは可能ですか?

4

1 に答える 1

1

リポジトリでEFを使用している場合、EntityFunctions.TruncateTime(datetimeObj)がうまくいくと思います。

    IQueryable<Entity> query = query.Where(x => EntityFunctions.TruncateTime(x.CreatedAt) == DateTime.Today);

    var someList = query.ToList();
于 2013-06-17T12:03:41.803 に答える