2009-06-29 3 views
0

ラムダ式の述語に "And"を使用する方法。私は、あなたは この
新しいClass1の( "テスト"、ステータス=>ステータス== 18 & & 20)ラムダ式の述語にANDを使用する方法

ような何かを達成しようとして

おかげ シャラス

+0

を検討? –

+0

私はC#.net、Framework 3.5を使用しています –

答えて

10

を返信してくださいしていますあなたの条件文を3つの異なる評価に分解する必要があります - あなたのようにそれらを組み合わせることはできません。

Status => Status == 18 && Status == 19 && Status == 20 

が、私はあなたがビットマスクをしようとしている場合は、&をしたいステータスが18、19の値を持つことができないので、あなたはここにまたはオペレータを希望している推測、と20のよ演算子を使用し、18、19 &のビットマスクでさえ、私には分かりません(あなたのユースケースを知っていますが)。

Status => Status == 18 || Status == 19 || Status == 20 
+0

ありがとう、それは私のために働いた。 –

+1

@Sharathこれは、@ Mattの答えに「同意する」をクリックしたときです – jeroenh

0

良い答えは今のところ - これでどの言語も.Any

List<int> favNumbers = new List<int>(18, 19, 20); 
Func<int, bool> pred = 
    Status => favNumbers.Any(f => f == Status) ; 
関連する問題