В настоящее время я работаю над взломом моей операционной системы .NET, работающей поверх MS.NET/Mono (ранее она запускалась только с голосом), и я попал в маленькую загвоздка. Мне нужно реализовать мою собственную System.Console, которая говорит с моей инфраструктурой обслуживания, и я не могу найти хороший способ ее заменить, не используя 1) не связываясь с mscorlib (это было бы здорово) или 2) Использование NotQuiteSystem пространство имен для моих замещений, которое нарушит совместимость.
Есть ли механизм, с помощью которого я могу чисто заменить классы системы, не делая одну из этих вещей?
Изменить: одна мысль заключается в использовании Mono.Cecil для перезаписи ссылок на System.Console на Renraku.System.Console или что-то вроде этого, но я предпочел бы работать в рамках, если это возможно.