最近在用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环境