Metody upraszczania brzydkich zagnieżdżonych drzew innych niż w C #

Czasami piszę brzydkie instrukcje if-else w C # 3.5; Zdaję sobie sprawę z kilku różnych podejść do upraszczania tego z tworzeniem tabel, hierarchią klas, metodami anonimowymi i innymi. Problem polega na tym, że alternatywy są wciąż mniej rozpowszechnione niż pisanie tradycyjnych brzydkich instrukcji if-else, ponieważ nie ma na to konwencji.

Jaka głębokość zagnieżdżenia jest normalna dla C # 3.5? Jakich metod spodziewasz się zamiast zagnieżdżać, jeśli w pierwszej kolejności? drugi?

jeśli mam dziesięć parametrów wejściowych z 3 stanami w każdym, powinienem mapować funkcje do kombinacji każdego stanu każdego parametru (naprawdę mniej, ponieważ nie wszystkie stany są poprawne, ale czasami wciąż dużo). Mogę wyrazić te stany jako klucz hashtable i handler (lambda), który zostanie wywołany, jeśli klucz pasuje.

Nadal jest to mieszanka dev opartego na tabelach, opartego na danych. pomysły i dopasowywanie wzorów.

to, czego szukam, rozszerza się na takie podejścia C #, jak to dla skryptów (C # 3.5 jest raczej jak skrypty)http://blogs.msdn.com/ericlippert/archive/2004/02/24/79292.aspx

questionAnswers(10)

yourAnswerToTheQuestion