Wörterbuch mit Func als Schlüssel

Ich frage mich, ob dies eine vernünftige Wahl des Schlüssels für ein Wörterbuch ist. Ich möchte einen Ausdruck als Schlüssel in einem Wörterbuch verwenden, etwa:

    var map3 = new Dictionary<Func<int, bool>, int>();
    map3.Add((x) => x % 2 == 0, 1);
    map3.Add((x) => x % 10 == 0, 2);
    // ...

    var key = map3.Keys.SingleOrDefault(f => f(2));
    // key = (x) => x % 2
    // map3[key] = 1

Dies ist eine sauberere Methode als große if-else- oder switch-Anweisungen.

Macht das Sinn? Wird es funktionieren? Gibt es einen einfacheren Weg?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage