我想将分析器添加到专门包含x64项目的解决方案中,并且分析器仅适用于该解决方案的项目。我可以为分析仪配置x64构建配置吗?
如果我尝试这样做,分析器会使用x64进行编译,但是当我尝试将分析器添加到x64项目时,我会收到类别为Roslyn.HostError的IntelliSense警告CS8034:
无法加载Analyzer程序集C:... \ TestAnalyzer.dll:无法加载 加载文件或程序集' file:/// C:\ Users ... \ TestAnalyzer.dll'或者一个 它的依赖关系。尝试加载带有的程序 格式不正确。
使用x86编译时添加相同的分析器工作正常。
答案 0 :(得分:2)
罗斯林并不关心分析仪的位数;它只是加载.Net程序集。
但是,Visual Studio本身就是一个x86进程。
如果你制作一个只有x64的分析器,它将从Roslyn命令行运行得很好,但是VS将无法加载它。
请注意,分析仪的位数与项目位数无关;分析器被加载到编译器中,而不是在运行时。