私は、(Funcとして与えられた)いくつかの述語に対して真である要素がコレクション内に正確にあるかどうかをチェックする方法があります。LINQ c#コレクション内の一意の要素
public bool ExistsUnique(Func<T, bool> p)
{
var tempCol = from i in MyCollection where p(i) select i;
return (tempCol.Count() == 1);
}
これに伴う問題も述語 にも当てはまる第二の要素が発見された場合、カウントはどちらかそれを意味し、どのまだ1である(例えば、同じ文字列の2がコレクション内に存在する)ということですすでに存在しているため、最初の要素をオーバーライドしたり、2番目の要素を追加したりしません。
どのように私はこの方法を修正することができますか? thx /Peter
私はこの疑問を疑っています(http://stackoverflow.com/questions/2740109/can-someone-please-explain-this-lazy-evaluation-code)とその答えがあなたを助けるかもしれません。 – ssamuel