我在運行時生成程序集(* .dll)。使用CodeDom中執行編譯過程,如下面的帖子建議:在運行時使用CodeDom.CompilerResults生成程序集(.dll)時生成清單
Generating DLL assembly dynamically at run time
我的代碼和彙編生成成功,沒有錯誤。
// load for reflection only
var _assemblyTempLoad = Assembly.LoadFrom(assembly.FullName);
以下異常被拋出:
「無法加載文件或程序集nameforassembly.dll'或者一個當我在運行時通過反射嘗試使用此負載生成組件的問題就來了其 依賴關係。該模塊預計將包含一個彙編 清單。「
如何生成清單文件或修復此問題?
我想澄清在運行時產生的裝配,使用下面的代碼:
CompilerResults compilerResult = codeDomProvider.CompileAssemblyFromFile(compilerParameters, Path.Combine(path, sourceCodeFile));`
預先感謝您
是否有可能文件被損壞或編譯爲錯誤的框架或編譯爲64位,並且您試圖加載到32位進程?如果您嘗試將編譯後的dll添加到項目中,您可能會得到更準確的錯誤(就像測試一樣)。 – sgmoore 2012-07-14 17:02:23
給與你鏈接的相同,你可以通過添加一行來指定平臺,比如parameters.CompilerOptions =「/ platform:anycpu」; – sgmoore 2012-07-17 16:45:41