Oracle.DataAccess不匹配错误
我为Visual Studio 2012安装了odp.net 32??位安装.我配置了对Oracle.DataAccess.dll的引用,我与Oracle的毗连好像正在运行. 当我构建项目(.net 4)时,我收到以下错误.该项目配置为构建AnyCPU(我的事变站是64位,我们最终将陈设到的处事器是32位) ‘正在构建的项目标处理赏罚器系统布局“MSIL”与参考Oracle.DataAcess,版本4.112.3.0,Culture = neutral,PublicKeyToken = 89b483f429c47342,processorArchitecture = x86,“x86”的处理赏罚器系统布局之间存在不匹配.这种不匹配也许会导致运行时妨碍.请思量通过Configuration Manager变动项目标方针处理赏罚器系统布局,以便在项目和引用之间调解处理赏罚器系统布局,可能行使与项目标方针处理赏罚器系统布局相匹配的处理赏罚器系统布局依靠引用 这只是一个vs.net告诫,但有没有步伐挣脱这个? 就像你说的那样,这只是一个告诫.由于ODP.net不是“AnyCPU”,以是告诫表白您的依靠相关不会像您本身的应用措施那样顺应主机操纵体系.只要你的odp.net安装切合比特的os,你就可以了.可是编译器无法做出这样的抉择,并试图让你有所相识.我确拭魅找到了一个connect article,个中包罗一个也许的变动(我假设到proj文件)来禁用错误: <PropertyGroup> <ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch>None</ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch> </PropertyGroup> 在任何环境下,只要您在处事器上安装的32位odp.net与您引用的64位odp.net版内情同(可能宣布者计策已正确安装到您的处事器上),您的“AnyCPU”应用措施就可以在您的处事器上正常运行重定向到更高版本).为了消除任何夹杂,我凡是将“复制当地”配置为“false”.换句话说,我针对特定版本的dll编译,但让它与GAC理会的内容(包罗大大都odp.net安装包括的宣布者计策)相反. 您还可以在您的开拓呆板上安装32位odp.net(抱负环境下再次行使沟通版本),以便运行/调试32位应用措施或行使Visual Studio中“随Oracle Studio Tools for Visual Studio”提供的集成器材事变室. 总而言之,这里不只仅是满意于眼睛.假如您的应用措施现实上正在运行(这体现着“它只是一个告诫”),则为64位,而不是行使32位安装.我猜你的呆板已经安装了64位版本(多个oracle家庭). (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |