C# 在10g IIS服务器环境中部署odp.net 11g应用程序
我使用Oracle11GR2客户端开发了一个C#3.5MVC1.0应用程序,该客户端使用odp.NET2.112.1.0。我想把它部署在我的IIS7服务器上,它有使用odp.net 2.102.2.20的oracle客户端10g。我得到以下错误 无法加载文件或程序集 'Oracle.DataAccess,版本=2.112.1.0, 文化=中立, PublicKeyToken=89b483f429c47342'或 它的一个依赖项。系统 找不到指定的文件 我试图将11g Oracle.DataAccess.dll复制到我的项目的bin文件夹中,但它给出了以下错误 的类型初始值设定项 'Oracle.DataAccess.Client.OracleConnection' 抛出了一个异常C# 在10g IIS服务器环境中部署odp.net 11g应用程序,c#,iis-7,oracle11g,odp.net,C#,Iis 7,Oracle11g,Odp.net,我使用Oracle11GR2客户端开发了一个C#3.5MVC1.0应用程序,该客户端使用odp.NET2.112.1.0。我想把它部署在我的IIS7服务器上,它有使用odp.net 2.102.2.20的oracle客户端10g。我得到以下错误 无法加载文件或程序集 'Oracle.DataAccess,版本=2.112.1.0, 文化=中立, PublicKeyToken=89b483f429c47342'或 它的一个依赖项。系统 找不到指定的文件 我试图将11g Oracle.DataAcc
最简单的方法是使用安装oracle odp.net包11.2.0.1.2。这将安装即时客户端,请查看readme.txt以获取安装说明。
但我发现目前的xcopy软件包不支持64位,这将在11月份到期。解决方法是为x86目标平台构建程序集。这仅适用于部署到windows server 2008 x64的情况。
仅复制Oracle.DataAccess.dll是不够的。是,我的IIS服务器在2008 x64上运行。我将尝试xcopy部署,并让您知道更多的一件事,我的10g客户端是否会生效,因为服务器上还有其他使用odp.net 2.102.2.20构建的网站。不应该,但对于生产场景,您应该有一个类似的登台环境来测试它。实际上,我相信它会在GAC中安装策略程序集,将所有对早期版本(2.102.2.20)的调用重定向到较新版本。理论上这应该没问题,但你们应该对其他网站进行基本的回归测试,以确保这一点。