Я на самом деле делаю то же самое ... Я думаю, что вы находитесь на правильном пути с классами компилятора.Я не думаю, что вы можете использовать IL на лету на мобильных устройствах в качестве проблемы изолированной программной среды, но я динамически создаю код на C # и собираю его в постоянные библиотеки DLL, как это ..
CompilerParameters compilerParameter = new CompilerParameters();
compilerParameter.OutputAssembly = "/Your/Path/Here.dll";
CodeDomProvider codeDomProvider = CodeDomProvider.CreateProvider("CSharp");
StringBuilder code = new StringBuilder();
code.AppendLine("public static class Test {");
//More code here...
code.AppendLine("}");
var compilerResult = codeDomProvider.CompileAssemblyFromSource(compilerParameter, code.ToString());
Надеюсь, это поможет ..