私はさまざまな種類の要素を含む配列を持っています。ビジュアルC#ラムダ式の配列要素の型チェック
特定の型が配列に存在する場合、if節を評価するラムダ式を作成しようとしています。
私は、次のと異なる多くのアプローチを試みていたが、私はそれが権利を取得していないようです:
var arraySourceText = EditorController.ActiveDocument
.ActiveSegmentPair
.Source
.AllSubItems
.ToArray();
if (arraySourceText.Any(o => o.GetType()) == typeof(string))
{
intStartingPH++;
}
何かアドバイスは大歓迎です。
注:arraySourceText
は、カスタムタイプのAPI IEnumerable
です。私は擬似コードを簡潔にするためにstring
と仮定しました。
更新:型はAPIによって公開されていないため、型の名前のみで、回避策はByyoの修正に基づいていました。私はタイプの名前をチェックし、bool
を返すために、別の方法を書いた:
あなたの括弧すべき
Any()
の結果は、(ただし、おそらくタイプミス)間違っている: 'arraySourceText.Any(O => o.GetType()== typeof演算(文字列)返信用' –おかげで、私はdeclaratioを追加しましたnの配列と明確な注釈を含む。 – ib11