gpt4 book ai didi

c# - 使用 CodeDom.CompilerResults 在运行时生成程序集 (.dll) 时生成 list

转载 作者:太空宇宙 更新时间:2023-11-03 16:29:08 25 4
gpt4 key购买 nike

我正在运行时生成程序集 (*.dll)。编译过程是使用 CodeDom 执行的,如以下帖子中所推荐:

Generating DLL assembly dynamically at run time

我的代码和程序集生成成功,没有错误。当我尝试在运行时通过反射加载这个生成的程序集时,问题就来了:

 // load for reflection only
var _assemblyTempLoad = Assembly.LoadFrom(assembly.FullName);

抛出以下异常:

"Could not load file or assembly 'nameforassembly.dll' or one of its dependencies. The module was expected to contain an assembly manifest."

如何生成 list 文件或解决此问题?

我想澄清一下程序集是在运行时生成的,使用以下代码:

CompilerResults compilerResult = codeDomProvider.CompileAssemblyFromFile(compilerParameters, Path.Combine(path, sourceCodeFile));`

提前致谢

最佳答案

您是否尝试过以下方法

compilerParameters.CompilerOptions = string.Format("/win32manifest: {0}", manifestFilename);

如果您已经将 CompilerOptions 设置为某个值,只需连接字符串

compilerParameters.CompilerOptions += string.Format(" /win32manifest: {0}", manifestFilename);

The win32manifest parameter告诉编译器还生成一个 list 文件。

关于c# - 使用 CodeDom.CompilerResults 在运行时生成程序集 (.dll) 时生成 list ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11485383/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com