Мне иногда хотелось бы, чтобы некоторые другие классы в библиотеках отражений .Net были получены из интерфейсов, поскольку мне приходится делать skin = и = оборачивать многие из них, когда я пишу модульные тесты для своего кода генерации кода.
Например, было бы неплохо, если бы существовал интерфейс IMethodInfo, реализованный MethodInfo. Затем я мог бы написать свой объект FakeMethodInfo для использования в моих модульных тестах.
Та же идея относится и к типу: я хотел бы создать класс FakeType, который имеет тот же интерфейс, что и тип, но не включает CLR, но вместо этого возвращает поддельные данные, предоставленные моим модулем тестирования кода.