Использование Roslyn для разбора / преобразования / генерации кода: я стремлюсь слишком высоко или слишком низко?
(То, что я пытаюсь сделать, это работать вокругApplication.Settings / MVVM проблема, связанная с созданием интерфейса и класса-оболочки из файла настроек, созданного vs.)
Что я хотел бы сделать, это:
Разобрать объявление класса из файлаСоздайте объявление интерфейса на основе только (не статических) свойств классаСоздайте класс-оболочку, который реализует этот интерфейс, берет экземпляр исходного класса в конструкторе и «передает» все свойства через экземпляр.Создайте другой класс, который реализует интерфейс напрямую.У меня вопрос двоякий:
Я лаю не на том дереве? Будет ли мне лучше использовать Code-Dom, T4, Regex (!) Для этого или его часть? (Я не против немного дополнительной работы, так как это в основном опыт обучения.)Если Рослин - это путь, на какой кусочек я должен смотреть? Я наивно надеялся, что будет какой-то способ пройтись по дереву и выплюнуть только те кусочки, которые я хочу, но у меня возникают проблемы с тем, чтобы разобраться, нужно ли / как использовать для этого SyntaxRewriter или используйте свободную конструкцию, запрашивая источник несколько раз для нужных мне битов.Если вы хотите прокомментировать аспект MVVM, вы можете, но это не главное направление вопроса :)