私は次のメソッド定義を持っています(冗長なジェネリックを削除するために編集されました):
public static T SearchAgaistValues<T>(Dictionary<string, string> input,
string key, List<T> values, Predicate<T> match, out string[] cmdParams)
私の簡略化された要件は次のとおりです。を検索する必要がありますinput
。key
見つかった場合は、その値がに表示されるかどうかを確認しますvalues
。ただし、values
一般的です(そして、明らかに一致する必要のある文字列が含まれます)。したがって、私の見方では、マッチングを実行するために述語メソッドを渡す必要があります。
ただし、Predicate<T>
私が見たすべての例には、ハードコードされたコンパレータがあります。key's
見つかった値をの各項目と比較する必要がありますvalues
。ただし、これらの値を渡すことはできません。
デリゲートベースのmatchメソッドを使用してforeachループの外でこれを行う方法がわかりません。
ここで何かが足りませんか?