找不到请求的.Net Framework Data Provider。可能没有安装
找不到请求的.Net Framework Data Provider。可能没有安装经测试,使用DbProviderFactories.GetFactory(string providerInvariantName)方法获取数据工厂必须在EXE主程序的App.config文件配置<system.data><DbProviderFactories>
否则会提示:找不到请求的.Net Framework Data Provider。可能没有安装!
使用DbProviderFactories.GetFactory方法需要配置数据库提供者:
1.配置 C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\machine.config 文件。
2.配置EXE主程序的app.config文件。
App.config文件配置参考
C# Code:
<system.data>
<DbProviderFactories>
<!--SQL Server数据库-->
<remove invariant="System.Data.SqlClient"/>
<add name="SqlClient Data Provider" invariant="System.Data.SqlClient" description=".Net Framework Data Provider for SqlServer"
type="System.Data.SqlClient.SqlClientFactory, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
<!--Oracle 数据库-->
<remove invariant="System.Data.OracleClient"/>
<add name="OracleClient Data Provider" invariant="System.Data.OracleClient" description=".Net Framework Data Provider for Oracle"
type="System.Data.OracleClient.OracleClientFactory, System.Data.OracleClient, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
<!--Oracle 数据库 (连接失败!.NET Framework2.0|x86??? )-->
<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=2.112.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342"/>
<add name="OleDb Data Provider" invariant="System.Data.OleDb" description=".Net Framework Data Provider for OleDb"
type="System.Data.OleDb.OleDbFactory, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
<add name="SQLite Data Provider" invariant="System.Data.SQLite" description=".Net Framework Data Provider for SQLite"
type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite, Version=1.0.58.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139"/>
<!--MySQL 数据库-->
<remove invariant="MySql.Data.MySqlClient"/>
<add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL"
type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.9.9.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"/>
<!--Oracle 数据库-->
<remove invariant="Oracle.ManagedDataAccess.Client"/>
<add name="ODP.NET, Managed Driver" invariant="Oracle.ManagedDataAccess.Client" description="Oracle Data Provider for .NET, Managed Driver"
type="Oracle.ManagedDataAccess.Client.OracleClientFactory, Oracle.ManagedDataAccess, Version=4.122.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342"/>
</DbProviderFactories>
</system.data>
//来源:C/S框架网(www.csframework.com) QQ:1980854898
<system.data>
<DbProviderFactories>
<!--SQL Server数据库-->
<remove invariant="System.Data.SqlClient"/>
<add name="SqlClient Data Provider" invariant="System.Data.SqlClient" description=".Net Framework Data Provider for SqlServer"
type="System.Data.SqlClient.SqlClientFactory, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
<!--Oracle 数据库-->
<remove invariant="System.Data.OracleClient"/>
<add name="OracleClient Data Provider" invariant="System.Data.OracleClient" description=".Net Framework Data Provider for Oracle"
type="System.Data.OracleClient.OracleClientFactory, System.Data.OracleClient, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
<!--Oracle 数据库 (连接失败!.NET Framework2.0|x86??? )-->
<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=2.112.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342"/>
<add name="OleDb Data Provider" invariant="System.Data.OleDb" description=".Net Framework Data Provider for OleDb"
type="System.Data.OleDb.OleDbFactory, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
<add name="SQLite Data Provider" invariant="System.Data.SQLite" description=".Net Framework Data Provider for SQLite"
type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite, Version=1.0.58.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139"/>
<!--MySQL 数据库-->
<remove invariant="MySql.Data.MySqlClient"/>
<add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL"
type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.9.9.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"/>
<!--Oracle 数据库-->
<remove invariant="Oracle.ManagedDataAccess.Client"/>
<add name="ODP.NET, Managed Driver" invariant="Oracle.ManagedDataAccess.Client" description="Oracle Data Provider for .NET, Managed Driver"
type="Oracle.ManagedDataAccess.Client.OracleClientFactory, Oracle.ManagedDataAccess, Version=4.122.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342"/>
</DbProviderFactories>
</system.data>
//来源:C/S框架网(www.csframework.com) QQ:1980854898
参考文档:
DatabaseProvider类详解|C/S开发框架
CSFramework开发框架ADO.NET学习要点
CSFramework.WebApi令牌管理器(Token Provider)实现添加、删除、刷新令牌过期控制
DbProviderFactories 加载Oracle.DataAccess.Client 失败
CSFramework.EF数据库框架应用Schema测试多种数据库(.NET8+EFCore)|C/S开发框架
CSFrameworV6试用版开发指南 | 主程序初始化CSFramework.EF数据库框架(.NET8)|C/S开发框架
CSFramework开发框架使用.NET Reactor加壳软件导致多语言失效|C/S开发框架
CSFramework.WebapiV3(.NET7/NetCore) 系统安全及Token令牌介绍|C/S开发框架
CSFrameworkV6试用版开发指南 | GetDataByKey 方法使用与扩展应用|C/S开发框架
CSFramework.EF数据库框架 - 特殊数据类型测试报告(_TestDataUpdate表)
CSFramework.DB 增加 IDatabaseExtensions扩展类|C/S开发框架
DataBinder类详解 | Winform MiniFramework蝇量框架|C/S开发框架
C#.NET给DataTable日期类型的列赋值报错:所需类型是 MySqlDateTime,值类型与列类型不匹配
CSFramework对象模型框架(DbDataUpdate),支持MsSQL,MySQL,Oracle三种数据库操作
CSFramework.DbDataUpdate数据模型框架 - 特殊数据类型测试报告
CSFramework通用自动提交数据工具类(DbDataUpdate),支持MsSQL,MySQL,Oracle三种数据库
DatabaseProvider类详解|C/S开发框架
CSFramework开发框架ADO.NET学习要点
CSFramework.WebApi令牌管理器(Token Provider)实现添加、删除、刷新令牌过期控制
DbProviderFactories 加载Oracle.DataAccess.Client 失败
CSFramework.EF数据库框架应用Schema测试多种数据库(.NET8+EFCore)|C/S开发框架
CSFrameworV6试用版开发指南 | 主程序初始化CSFramework.EF数据库框架(.NET8)|C/S开发框架
CSFramework开发框架使用.NET Reactor加壳软件导致多语言失效|C/S开发框架
CSFramework.WebapiV3(.NET7/NetCore) 系统安全及Token令牌介绍|C/S开发框架
CSFrameworkV6试用版开发指南 | GetDataByKey 方法使用与扩展应用|C/S开发框架
CSFramework.EF数据库框架 - 特殊数据类型测试报告(_TestDataUpdate表)
CSFramework.DB 增加 IDatabaseExtensions扩展类|C/S开发框架
DataBinder类详解 | Winform MiniFramework蝇量框架|C/S开发框架
C#.NET给DataTable日期类型的列赋值报错:所需类型是 MySqlDateTime,值类型与列类型不匹配
CSFramework对象模型框架(DbDataUpdate),支持MsSQL,MySQL,Oracle三种数据库操作
CSFramework.DbDataUpdate数据模型框架 - 特殊数据类型测试报告
CSFramework通用自动提交数据工具类(DbDataUpdate),支持MsSQL,MySQL,Oracle三种数据库
其它资料:
什么是C/S结构? | C/S框架核心组成部分 | C/S框架-WebService部署图 | C/S框架-权限管理 | C/S结构系统框架 - 5.1旗舰版介绍 | C/S结构系统框架 - 功能介绍 | C/S结构系统框架 - 产品列表 | C/S结构系统框架 - 应用展示(图) | 三层体系架构详解 | C/S架构轻量级快速开发框架 | C/S框架网客户案例 | WebApi快速开发框架 | C/S框架代码生成器 | 用户授权注册软件系统 | 版本自动升级软件 | 数据库底层应用框架 | CSFramework.CMS内容管理系统 |
什么是C/S结构? | C/S框架核心组成部分 | C/S框架-WebService部署图 | C/S框架-权限管理 | C/S结构系统框架 - 5.1旗舰版介绍 | C/S结构系统框架 - 功能介绍 | C/S结构系统框架 - 产品列表 | C/S结构系统框架 - 应用展示(图) | 三层体系架构详解 | C/S架构轻量级快速开发框架 | C/S框架网客户案例 | WebApi快速开发框架 | C/S框架代码生成器 | 用户授权注册软件系统 | 版本自动升级软件 | 数据库底层应用框架 | CSFramework.CMS内容管理系统 |
在线客服
