を表現します私はそれを共有することができるものにリファクタリングしたかったのです。私はそれをSQLに変換することができないとして、私は通常の方法でこれを行うことはできません知っているが、私もどちらか動作するようにオプションは、私は、具体的句は、同じコンプレックスを含むSQLクエリへのLINQのペアを持って
Expression < Func<...>>
ものdescribed hereを取得することはできません。私はここに私の正気の目的のためにwhere句を簡素化した場合
は、私は式に
where (range.MinumumFrequency < minFreq)
をオンにしたいので、私は試してみました:
public static Expression<Func<FreqRange, bool>> Overlaps(decimal minMHz, decimal maxMHz)
{
return (range => range.MinimumFrequency <= minMHz);
}
これはコンパイルに表示されますが、私はどこのステートメントが動作するように見えることはできません、私は次を試した:
where FreqRange.Overlaps(minMHz, maxMHz)
しかし、これは私を与えるコンパイル時エラー:
Cannot implicitly convert type 'System.Linq.Expressions.Expression>' to 'bool'
アイデアはありますか?また、私たちがこれを働かせたとすれば、式< Func < >>のラムダ式を拡張して他の条件を含めることはできますか?