私はLINQ式を一緒に置くことについての記事を読んだことがありますが、それらはカバーしていると思われます。私は、このソリューションを実装している:LINQ式の作成
http://blogs.msdn.com/b/meek/archive/2008/05/02/linq-to-entities-combining-predicates.aspx
は、どのように私はそれが動作するように、このコードを書くのですか?
Expression<Func<Crop, bool>> chooseOranges = crop => crop.IsOrange;
Expression<Func<Farm, bool>> selectFarm = farm => farm.HasCows;
selectFarm = selectFarm.And(farm => farm.Crops.Any(chooseOranges);
コンパイルされますが、実行時に.NET 1025エラーがスローされます。 chooseOrangesをリテラルテキストに置き換えた場合、それはうまくいくが、chooseOrangesはビジネスロジックを使って1つずつ作成される。上にリンクしたコードは、さまざまなExpression.Foo()関数に依存しているようですが、助けになるものは見つかりませんでした。
*明示的に書かれた同じ表現をサポートしている任意のプロバイダで使用できます。 – usr
@usr確かに、そのステートメントをより強くするように更新 –
最後の行は、実行しようとするとStackOverflowExceptionをスローします。それは私の終わりの問題ですか? – MrEff