現時点では、内部にメソッドがあるlinqクエリがあります。エラーLINQ to Entities does not recognize the method
が表示されます。だから私は式LINQ to Entities does not recognize the methodのように変換することができますが、私はlinqクエリに式を追加するクリーンで簡単な方法があるのだろうかと思っています。linqクエリで式を使用する
オリジナルメソッド
public bool IsAvailable()
{
return Eligibility.ProgramType == InteractionProgramTypes.Available;
}
は表現せずに
public System.Linq.Expressions.Expression<Func<InteractionProgram, bool>> IsAvailable()
{
return i => i.Eligibility.ProgramType == InteractionProgramTypes.Available;
}
LINQクエリに変更
x => x.ActivityDate <= endDate && x.IsAvailable()
式で
LINQクエリ
x => x.ActivityDate <= endDate && x.IsAvailable().Compile()
コンパイラエラーが発生すると、& &オペランドをオペランドに適用できません。
私の現在のlinqクエリに式を追加するにはどうすればいいですか?すでにExpression<Func<InteractionProgram,bool>>
を返すようにIsAvailable
を変換しているので
'.Compile()'とはどういう意味ですか?結果は? –
@JericCruz https://msdn.microsoft.com/en-us/library/bb345362(v=vs.110).aspx – Master
エラーはSQLによって提供されていますか?またはコンパイル/解釈について? – GGO