Интересный вопрос.Я думаю, что вам лучше всего использовать WinDbg для подключения к запущенному процессу .NET exe (думаю, вам придется сделать это после того, как tyoe будет скомпилировано в памяти, поскольку адреса памяти для EXE-файлаизменится - я предполагаю).
Затем, когда тип скомпилирован и запущен в памяти, вы можете искать этот тип с помощью команд, найденных в SOS.dll.Вы также можете поместить точки останова в память, используя SOS.dll
Начало работы со ссылкой SOS
http://rionisimpsoni.wordpress.com/2009/10/08/getting-started-with-windbg-and-sos-dll/
Это немного легкий ответ, поскольку объяснение того, как использовать WinDbg и SOS.dll, много раз освещалось в Интернете.
Редактировать:
Одним из недостатков этого метода является то, что вы не сможетеувидеть исходный код, как Visual Studio отображает его.По мере выполнения кода вы увидите язык ассемблера.Это может вас уже оттолкнуть :), но если вы будете придерживаться этого и понимать немного сборки, вы можете сделать достаточно, например, для отладки ошибок.
Еще одна вещь, которую вы можете сделать, - вывести сборку .NETиз памяти в файл на диске.Команда SOS.dll, которая делает это, ускользает от меня сейчас, я пойду поищу ...
Ааа, это SaveModule
.Пример этого можно найти в комментариях здесь .