私は次のクエリを持っている:WHERE単純なLINQクエリに追加すると、ゼロの結果を返します(ただし、いけない)
var Query = db.ReportCommon
.Where(x => x.ReportType == category)
.Where(x => x.ReportDateTime >= dateStart)
.Where(x => x.ReportDateTime < dateEnd);
category
は、私は(つまり、「ショート」に渡す変数であり、「標準'など)。 dateStart
およびdateEnd
は、DateTime値です。
このクエリは、期待どおりの結果を返します(約300奇数)。
しかし、私は実際に私は約2または3以下の結果を得る必要があるとき、私はゼロの結果を得る次の行を追加するとき:
.Where(x => x.PartnerRef.ToUpper() != "TEST");
をPartnerRef
フィールドが「テスト」を含んでいないだけで約3エントリがあります。または 'test'または 'TEST'の場合、他のものはNULLか、異なるパートナー参照(「DSW」など)を含んでいます。
なぜこのようなことが起こり、どうすれば解決できますか?
「db」とは何ですか? (つまり、どのLINQプロバイダを使用していますか?) – dtb
dbは私のエンティティコンテキストです プライベートOnlineReportingEntityContext db = new OnlineReportingEntityContext(); – ChrisCurrie
SQLプロバイダから直接、期待している行についての情報を提供してもらえますか?おそらく、PartnerRefフィールドには、あなたが期待しているものとはあまり合わないものがあります。 – doctorless