Можно ли сохранить динамическую сборку на диск?
Я недавно купил Ayende 'книгаСоздание DSL в Бу (купи, прочти,круто) но яЯ сталкиваюсь с проблемой реализации, и я хочу посмотреть, как выглядит сгенерированный код. Я бы обычно использовал рефлектор для просмотра кода, но в этом случае сборки динамические и только в памяти. Есть ли способ сохранить динамические сборки на диск, чтобы я мог их отразить?
РЕДАКТИРОВАТЬ / Мой ответ:
Вау, потребовалось некоторое время, чтобы вернуться к этому. К сожалению, я упустил важный момент из исходного вопроса.
Важный бит: ям используюAyende»Библиотека RhinoDSL как он рекомендует в книге. У меня есть доступ к компилятору boo в моем подклассе DslEngine, который выглядит так:
public class JobEngine : DslEngine
{
protected override void CustomizeCompiler(Boo.Lang.Compiler.BooCompiler compiler, Boo.Lang.Compiler.CompilerPipeline pipeline, string[] urls)
{
pipeline.Insert(1, new ImplicitBaseClassCompilerStep(typeof (JobBase), "Prepare", "JobLanguage", "log4net", "Quartz"));
}
}
Чтобы изменить наименьшее и получить то, что я хотел, мне нужно было добавить одну строку ...
public class JobEngine : DslEngine
{
protected override void CustomizeCompiler(Boo.Lang.Compiler.BooCompiler compiler, Boo.Lang.Compiler.CompilerPipeline pipeline, string[] urls)
{
compiler.Parameters.GenerateInMemory = false; //