尝试加载 Oracle 客户端库时引发 BadImageFormatException。如果在安装 32 位 Oracle 客户端组件的情况下以 64 位模式运行,将出现此问题
最近在用nhibernate做一个项目
运行环境是: windows 10 Pro(64位);
开发环境是: visual studio 2017 + Oracle 11g R2(64位);
使用nhibernate 4.0的版本,查看了从nuget下载下来的package引用文件,发现有32位和64位的版本,
nhibernate配置好了运行之后,发现出现这个问题,有点摸不着头脑,从网络上找问题之后,发现都是千篇一律,都是说在启用程序的时候,程序需要引用oracle的32位的oci.dll文件,后来仔细琢磨了一下,
觉得启用程序了的时候,会不会是iis express是32位的,所以总结了一下这个问题的原因:
第一种,不使用dataaccess,使用通用的Oracle.ManagedDataAccess,可以忽略版本问题
第二种,在属性——生成——web中iis express换成用本地IIS执行,但是这样有可能会出现目录不对导致JS和CSS路径错误
第三种,工具——选项——项目和解决方案——web项目——对网站和项目使用IIS EXPRESS的64位版,问题解决,适用于nhibernate环境
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
2015-09-07 JSON字符串转换成JSON对象