我在我的网络应用中使用oracle asp.net Forms Auth。 asp.net Membership / Role / Profile提供程序类使用Oracle.web.dll,这些类的连接字符串使用Oracle.DataAccess.dll。
现在我想为主应用程序的数据连接更改为Oracle.ManagedDataAccess.dll。
我做了这个更改,应用程序的主要数据连接正常。但是,当调用任何表单成员资格/角色/配置文件方法时,我会收到错误说"无法加载Oracle.DataAccess.dll"。
我使用托管提供程序将Forms Auth连接字符串指向字符串,但是Membership / Role / Profile部分似乎依赖于Oracle.Web,它以某种方式查找Oracle.DataAccess而不是Oracle.ManagedDataAccess。
有人能说清楚吗? 谢谢, --Jim
答案 0 :(得分:2)
我遇到了类似的问题,并使用Reflector来检查引用。
是的,Oracle.Web.dll引用了进一步引用OCI的Oracle.DataAccess.dll。由于OCI与64位和32位不同,实际上需要安装相应的Oracle客户端。
希望有一个Oracle.Web版本,很快就会依赖Oracle.ManagedDataAcccess.dll。
如果依赖于个人资料或成员资格提供者,通过使用oracle.manageddataaccess的优势就会丢失。