DevExpress:使用ASP.NET C#创建Web仪表盘时Oracle数据源无法找到求助
解决DevExpress Web仪表盘找不到Oracle数据源的问题
嗨,我之前也碰到过类似的问题,DevExpress Web仪表盘默认确实不会自动显示Oracle数据源选项,得做几步配置才行,我给你梳理一下具体的解决办法:
安装Oracle数据访问组件
首先得确保你的项目里有Oracle官方的数据提供程序,推荐用ODP.NET Managed Driver——它不需要安装Oracle客户端,直接通过NuGet就能装:- 如果是.NET Core/.NET 5+项目,在NuGet包管理器控制台执行命令:
Install-Package Oracle.ManagedDataAccess.Core - 如果是.NET Framework项目,执行:
Install-Package Oracle.ManagedDataAccess
- 如果是.NET Core/.NET 5+项目,在NuGet包管理器控制台执行命令:
手动配置数据源连接
安装完驱动后如果还是没在向导里看到Oracle选项,可以手动创建连接:- 打开仪表盘设计器,选择「创建新数据源」→「数据库」→「数据连接」→「新建连接」
- 点击对话框里的「更改」按钮,查看是否有Oracle相关选项;如果有,直接填入服务器地址、用户名、密码、服务名等信息测试连接
- 要是还是没找到选项,就手动输入Oracle连接字符串,比如:
输入后点击「测试连接」确认能正常访问数据库Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=你的Oracle服务器地址)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=你的服务名)));User Id=你的用户名;Password=你的密码;
配置项目的配置文件
对于.NET Framework项目,还需要在Web.config里注册Oracle数据提供程序,确保DevExpress能识别到:
在<configuration>节点下添加这段配置:<system.data> <DbProviderFactories> <remove invariant="Oracle.DataAccess.Client" /> <add name="Oracle Data Provider for .NET" invariant="Oracle.DataAccess.Client" description="Oracle Data Provider for .NET" type="Oracle.DataAccess.Client.OracleClientFactory, Oracle.DataAccess, Version=4.122.19.1, Culture=neutral, PublicKeyToken=89b483f429c47342" /> </DbProviderFactories> </system.data>注意:这里的Version要和你安装的Oracle驱动版本对应,要是版本不对会报错。
检查版本兼容性
最后要确认你的DevExpress版本和Oracle驱动版本是兼容的,比如旧版DevExpress可能对新版ODP.NET支持不佳,建议使用双方的最新稳定版,避免出现兼容问题。
内容的提问来源于stack exchange,提问作者shahd
相关产品推荐
相关产品推荐

