Enquiry という名前の linq Entity があります。これには、string DateSubmitted というプロパティがあります。
特定の日付範囲内に DateSubmitted がある Inquiry に対して IQueryable を返す必要があるアプリを作成しています。
理想的には、次のようなものを書きたいと思います
IQueryable<Enquiry> query = Context.EnquirySet.AsQueryable<Enquiry>();
int dateStart = int.Parse("20090729");
int dateEnd = int.Parse("20090930");
query = (from e in query
where(enq => int.Parse(enq.DateSubmitted) < dateEnd)
where(enq => int.Parse(enq.DateSubmitted) > dateStart)
select e);
明らかに、Linq to EF は int.Parse を認識しないので、述語を返す Expression メソッドで目的を達成できると思いますか???
私は PredicateBuilder をいじっていろいろと調べてきましたが、これを解決しようとして脳みそを揚げることに成功しました。確かに、エンティティに別のプロパティを追加してそこで変換することはできますが、これを本当に理解したいと思います。誰かが私の頭脳を揚げない例/リンクを説明または与えることができますか?
前もって感謝します
マーク