我在Visual 2012中有一个针对这些平台的C#项目,即PCL (我删除了名称):

当我尝试将dll从成功的构建添加到VS2013中的Silverlight 5项目时,我会收到这个警告,而且它似乎并没有被实际添加:
警告1正在构建的项目的处理器体系结构与引用"Name“的处理器体系结构"x86”不匹配。这种不匹配可能导致运行时失败。请考虑通过Configuration更改项目的目标处理器体系结构,以便在项目和引用之间对处理器体系结构进行调整,或者使用与项目目标处理器体系结构相匹配的处理器体系结构来依赖引用。

为什么PCL会显示为x86呢?
发布于 2014-10-26 16:55:12
当您有一个针对多个目标的PCL项目,并且希望在其他项目中引用输出.dll时,请确保您选择了正确的.dll并进行了正确的编译。
例如:
在添加引用时,应该选择为WindowsPhone编译的引用,注意,如果您想在模拟器上运行,您应该选择x86版本,因为模拟器不是ARM。如果添加x86版本,并在配置管理器中将其设置为ARM,Visual将以与您相同的错误警告您,因为您将运行ARM代码并引用x86代码。
检查添加的.dll是否与配置管理器匹配。将其更改为您想要的正确体系结构,而不是“多个平台”与“任意CPU”。
https://stackoverflow.com/questions/26244174
复制相似问题