我有一个CodeDom设置,需要引用可执行文件目录中的某些程序集。但是,似乎只搜索工作目录和GAC以查找这些程序集,而不是可执行目录。
var compilerOptions = new CompilerOptions {
ReferencedAssemblies = {
"System.dll",
"System.Core.dll",
"Assembly0.dll",
"Assembly1.dll"
}
};
C#编译器将搜索:
无论出于何种原因,它都不会在执行目录中搜索Assembly0.dll和Assembly1.dll。
答案 0 :(得分:2)
“执行目录”仅与您的进程相关,而不是与csc.exe进程相关。只需生成程序集引用的完整路径。易于使用System.Reflection.Assembly.GetEntryAssembly()。位置