Как уже говорили другие, проблема заключается в том факте, что CodeDom создает артефакты на диске, к которому затем впоследствии требуется доступ для визуализации представлений.
Помимо того, что встраивание Spark в любом случае является потенциальной проблемой с памятью, я считаю, что есть потенциальное решение этой проблемы. Учитывая тот факт, что проблема вызвана динамической генерацией представлений на лету, почему бы не воспользоваться опцией пакетной компиляции Spark , чтобы сгенерировать dll для ваших представлений как часть вашей сборки.
Вы можете использовать код, подобный следующему, для достижения этой цели:
var factory = new SparkViewFactory(settings)
{
ViewFolder = new FileSystemViewFolder(viewsLocation)
};
// And generate all of the known view/master templates into the target assembly
var batch = new SparkBatchDescriptor(targetPath);
factory.Precompile(batch);
В конце концов, у вас должна быть выходная dll, которая будет содержать скомпилированные представления, и затем вы можете встраивать эту dll так же, как вы встраиваете основной Spark.dll.
Надеюсь, это поможет
Rob