问题标签 [dbproviderfactories]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
8 回答
25487 浏览

entity-framework - 添加没有 App.Config 的 DbProviderFactory

我在我的数据层(基于实体框架)中使用 DbProviderFactories 并在我的数据库中使用 SQLite,但我不需要 App.Config 来获得以下代码:

相反,我想让我的数据层以编程方式将其放入。有人知道这样做的方法吗?

编辑:

原因是我使用 IoC 容器来选择数据层,而我的一些数据层不需要 App.Config 值,或者让它们与数据层硬绑定。

0 投票
1 回答
14296 浏览

mysql - 如何将 ADO.NET DbProviderFactory 与 MySQL 一起使用?

如何将 ADO.NET DbProviderFactory 与 MySQL 一起使用?

0 投票
3 回答
3041 浏览

c# - 模拟 DbProviderFactory

我对单元测试比较陌生,对模拟完全陌生。我有一个包装 DbProvider 工厂的数据库类,我想在不连接到数据库的情况下为其创建单元测试。

我将如何模拟 DbProvider 工厂,以便我可以将它传递给我的课程?我还需要模拟 DbConnection、DbCommand 等吗?我的代码的一个小示例如下:

0 投票
4 回答
13538 浏览

.net - .NET 错误的 DbProviderFactories

我无法让 ODP.NEt 库与 .NET DBProviderFactories 一起使用。我收到以下代码错误:

为 system.data 创建配置节处理程序时出错:列“InvariantName”被限制为唯一。值“Oracle.DataAccess.Client”已存在。

使用此提供程序名称:Oracle.DataAccess.Client

以及 web.config 中的以下条目:

有谁知道出了什么问题?我不认为我在任何地方都设置了两次。

0 投票
5 回答
15298 浏览

.net - DbProviderFactory 与 Npgsql?

我有一个项目,我试图从 SQL Server 移植到 PostgreSQL。除了我无法DbProviderFactory使用 Npgsql 之外,我相信我几乎已经完成了所有工作。

产量

未处理的异常:System.Configuration.ConfigurationErrorsException:找不到或加载已注册的 .Net Framework 数据提供程序。

我该如何解决?

0 投票
3 回答
13625 浏览

c# - 将配置添加到 App.config 文件时出错

相关问题: 在另一台机器上运行我的应用程序给我一个错误

这是我的 App.config 文件的样子:

在我的开发机器上运行它可以工作,但是在部署到另一台计算机时,我收到数据提供程序错误。(见上面的相关问题)。

建议的解决方案是将其添加到 App.config 文件中:

当我将它添加到 App.config 文件时,在 Visual Studio 2010 中启动应用程序时出现此错误:

为 system.data 创建配置节处理程序时出错:列“InvariantName”被限制为唯一。值“System.Data.SQLite”已经存在。(C:\Users\Sergio.Tapia\Desktop\DocumentScannerDanyly\DocumentScannerDanyly\bin\Debug\DocumentScannerDanyly.vshost.exe.Config 第 13 行)

关于这个错误是什么的任何建议?此外,由于 .sqlite 文件的位置与其安装位置相关,我是否必须将 AppConfig 文件中的 connectionString 更改为更动态的内容?

谢谢您的帮助。

编辑:

当我按照此处某人的建议将其添加到配置中时,出现错误:

未能找到或加载已注册的 .Net Framework 数据提供程序。

0 投票
1 回答
838 浏览

c# - 为什么我的 DbProviderFactory 的执行与 SqlClientFactory 不同?

我实现了一个DbProviderFactory返回 SqlX 类型的自定义,除了我添加了以下逻辑CreateCommand

我这样做是SqlDataSource为了在创建命令时进行跟踪,然后在完成记录所有 SqlCall 时进行跟踪(无需启动 Sql Profiler)。这行得通,但是在我实现这个之后,我遇到了以下异常SqlDataSource

这在后面的代码中。

引发的错误是 SqlParameter "@x_id" 不存在,即使这适用于标准 SqlClientFactory。使用调试器时,它显示x_id使用时集合中有 1 个参数MyProvider@x_id使用默认提供程序时。

这有什么原因吗?是否有某种方法可以自动添加@,或者我应该确保代码隐藏并SqlDataSource就是否存在@达成一致。
存储过程在没有“@”符号的情况下仍然可以工作,幸运的是我没有对参数集合进行这种直接操作,但我想知道为什么会首先发生这种情况。

谢谢您的帮助。

0 投票
4 回答
14990 浏览

visual-studio - 如何添加自定义 DB 提供程序以在 Visual Studio 中访问?

我想在 Visual Studio 中使用自定义数据库提供程序。我需要它来使用实体框架。

比如我下载了 NpgSQL,在 GAC 中注册:

并添加到 machine.config 文件中:

但是 Npgsql 没有出现在 Visual Studio 的数据源列表中:

VS中的数据源

如何将自定义数据库提供程序添加到此列表?

UPD:如果我使用命令字符串 edmgen.exe 我得到错误:

错误 7001:未能找到或加载已注册的 .Net Framework 数据提供程序。

0 投票
1 回答
3710 浏览

c# - 使用 ProviderFactory 创建 SQLite 连接获取异常

我正在尝试使用 ProviderFactory.CreateConnection() 来获取 SQLite 连接。我收到带有以下消息的 System.ArgumentException:

“不支持关键字:'datetimeformat'。”

连接字符串是:

在 app.config 文件中,我有:

当我实例化 SQLiteConnection 实例时,连接字符串起作用。使用 ProviderFactory 失败。关于如何解决这个问题的任何建议?

0 投票
1 回答
2187 浏览

unit-testing - 你如何对 DAL 进行单元测试?

我的应用程序中有一个数据访问层,它包装了一个 ADO.NET 数据提供程序。DAL 将数据提供程序返回的数据转换为 .NET 对象。我看过很多建议不要对 DAL 进行单元测试的帖子,但我担心那里可能会出错 - 有很多循环和强制转换以及空检查。

我对使用 RhinoMocks 之类的东西创建一个模拟 DbProvider 有一些想法,但是我必须在每个测试中模拟出的接口数量将是压倒性的,而且我必须设置的期望数量会使测试变得非常困难读书。似乎每个测试都会比它正在测试的代码更复杂——从单元测试的 3 个目标的角度来看,这将是一场灾难:

  1. 可读性
  2. 可维护性
  3. 可信度

我有一个想法来实现一个友好的 DbProviderFactory 来从 xml 加载示例数据。我可以在测试中通过依赖注入将其插入。它应该使维护测试变得更加简单。一个简单的例子可能是:

我认为这种方法——使用友好的 DbProvider——可能会使测试 DAL 代码变得更容易。它将具有以下优点:

  1. 测试数据将在 xml 中,并且可以与单元测试一起放在源代码管理中。它可能在外部文件中,也可能在测试中。
  2. 我没有使用真正的数据库,所以这消除了状态问题。所以我不必在每次测试之前将数据库置于已知状态。
  3. 我不必在每个测试中模拟出所有的 ADO.NET 接口。我将编写一组可以在整个代码库中重复使用的假实现。

人们可以对这个想法提出一些批评吗?是否已经有类似的实现可以用于此?

谢谢