Не могу помочь с CodeDom; согласно другим постерам, в любом случае это не поможет.
Если вам нужны надежные и точные парсеры для C #, VB.net, VC ++ и управляемого VC ++ (и многих других языков), вы можете рассмотреть наш набор реинжиниринга программного обеспечения DMS и его семейство лицевых панелей * 1006-концов *.
Используя внешний интерфейс, DMS анализирует источник в детализированном AST, что позволяет проводить дальнейший анализ, преобразование и генерацию корректного исходного кода из модифицированных AST. Нет, вы не можете манипулировать этими деревьями с помощью вызовов C #; Вы должны сделать это изнутри DMS, которая предлагает полную экосистему для этих задач. Но вы можете манипулировать ими изнутри DMS практически произвольным образом.