とクエリが存在する、これらの従業員は、引数にTypeOfWorks
リスト渡さtypeofWork
(Id
)に持っている必要がありますI試してみてくださいは、私はLINQと従業員のリストを取得したいのですがLINQ
var res = from p in Employees
where (from pp in p.TypeOfWorks
where pp.TypeOfWork.Id == guid select pp.Id).Contains(p.Id)
select p;
ありがとうございました。私の質問との一致100%はこれにwhere句を修正することができます:emp.TypeOfWorks.FirstOrDefault(x => x!= null && x.TypeOfWork.Id == guid)!= null –
ちょうど情報のために、私はなぜlambda式で誰もが答えるLinqコードに質問してください、具体的な理由はありますか? –
@ Kris-l:FirstOrDefault(Func <>)とAny(Func <>)は全く同じメソッド呼び出しで、Reflectorをチェックインできます。唯一の違いは、FirstOrDefault(Func <>)がオブジェクトを返し、Any(Func <>)が単にboolを返すことです。参照型のリストをテストしているときは、ブールを返すほうがやや効率的です。あなたが値の型のリストをテストしているなら、それは必ずしも問題ではありませんが、おそらくブールを返すのはもう少し効率的です。 –