我有一些代码可以生成不同类的 CodeCompileUnit 和 CodeTypeDeclarations 元组数组。生成数组后,我希望能够调用并创建数组给定成员的实例。但是,似乎无法弄清楚如何获取 CodeTypeDeclaration 中定义的类的名称和类型。
var tuple = Factory.CreateTuple(...);
var provider = new CSharpCodeProvider();
var parameters = new CompilerParameters
{
GenerateInMemory = true,
IncludeDebugInformation = true
};
var results = provider.CompileAssemblyFromDom(parameters, tuple.GetCodeCompileUnit());
var runtimeObj = (????tuple.GetCodeTypeDeclaration().GetType()???)Activate.CreateInstance(results.CompileAssembly.GetType(tuple.GetCodeTypeDeclaration().Name));
runtimeObj.DoStuff();
关于如何做到这一点的任何想法?