问题标签 [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 投票
0 回答
73 浏览

sqlite - 当我的入口点是 DLL 并且托管应用程序不是 .NET 时,如何加载 system.data 配置部分

我正在研究一个 .NET DLL,它通过 COM 在用 Java、Visual Basic 6 和 c++ 编写的许多不同应用程序中进行交互。

该应用程序将 SQLite 用于客户端数据库,我们使用 system.data DbProviderFactory 配置部分向 DLL 提供有关从何处获取连接的信息。如果托管应用程序在 .NET 中,这可以正常工作,但如果应用程序不是 .NET 应用程序,我如何通过代码加载该部分?

我们已经尝试使用 ConfigurationFileMap 和 ConfigurationManager 从一个专门命名的配置文件中加载它,但本节特别不加载,只包含 machine.config 中的条目。

是否有任何从命名配置文件中加载此部分的显式方法?

0 投票
1 回答
2506 浏览

.net - 清除 App.config 中的 DbProviderFactories

我有一个 App.config,我想用不同版本的提供程序替换 machine.config 中指定的提供程序。已尝试按名称删除提供程序,remove现在已尝试使用. clear

这似乎没有效果:连接字符串仍在加载中指定的提供程序machine.config。例如,当使用下面的配置时,我希望应用程序找不到我的提供程序。

此外,指定不同的名称或试图覆盖相同的名称;也没有效果。

0 投票
1 回答
6751 浏览

mysql - 带有 MySql 的 ASP.Net MVC - 找不到请求的 .Net Framework 数据提供程序

我已经从http://dev.mysql.com/downloads/connector/net/安装了 MySql 连接器 6.6.5

我已在我的 asp.net MVC 网站中添加它作为参考(请参阅下面的屏幕截图),并将“复制本地”更改为 true。

但是,当我到达线路时:var calls = db.Calls.ToList();我收到错误:

Unable to find the requested .Net Framework Data Provider. It may not be installed.

我在下面包含了我的代码。谁能让我知道我错过了什么?

谢谢,马克

控制器调用.cs:

CallContext.cs

Web.Config 连接字符串:

参考:

参考

0 投票
0 回答
107 浏览

c# - 应用程序一加载就关闭,没有错误

我的一个应用程序在我的开发机器上运行良好,但如果我在另一台计算机上运行它,应用程序一加载就会关闭。

我记得有一次我没有部署时遇到了这个问题app.config,但我确保这次部署了它。

由于该应用程序绝对没有错误,而且谷歌的所有结果都是错误的,我不知道该怎么做。

什么可能导致这种行为?即使app.config已部署,我认为它可能与它有关或与一个或多个参考有关,但我不确定。

编辑:

显然事件日志上有一个调用堆栈

0 投票
0 回答
715 浏览

dbproviderfactories - DbPRviderFactories.GetFactoryClasses() 中的错误行为

我正在构建一个 mvc 应用程序。我在 system.data 的 web.config 中有这个:

此提供程序来自 nuget 项目中的引用,而不是 GAC 中的引用。在 GAC 我有:在此处输入图像描述

在 DemoController 我有:

结果,您可以在屏幕截图中看到。DbProviderFactories 的非常奇怪的行为

谁能告诉我为什么所有提供者(ole、oracle、odbc)仍然存在,即使我已经在配置中删除了它们?谁能告诉我为什么在我可以调用的工厂数组中没有像 SqlCleint 这样的工厂

DbProviderFactory msSqlDbProviderFactory = DbProviderFactories.GetFactory("System.Data.SqlClient");

还是得到工厂?这是我无法解释的奇怪行为。

我这样做时遇到了这个问题: 1. 当 web.config 中有这样的连接字符串时,使用默认 ctor 初始化 DbContext:

  1. 尝试将 DbMigrator 与 DbMigrationConfig 一起使用,如下所示:

string connectionString = "数据源=MSSQL-SERVER-INSTANCE;初始目录=MyDb.mdf;Trusted_Connection=False;用户ID=u;密码=p";

这里出现了令人讨厌的“无法找到请求的 .Net Framework 数据提供程序”。

DbProviderFactories 的源代码

0 投票
3 回答
950 浏览

c# - DbProviderFactory 设置 ConnectionTimeout

我们使用时是否有可能更改连接超时System.data.Common.DbProviderFactory

0 投票
1 回答
152 浏览

linqpad - LINQPad DbProviderFactories GetFactoryClasses

我发现在 LINQPad.exe.config 中向 DbProviderFactories 添加一个条目不会使其显示在 System.Data.Common.DbProviderFactories.GetFactoryClasses().Dump();

我必须将它添加到 machine.config 才能看到并使用它。这是可以预期的吗?

具体来说,我试图添加 Oracle ODP 托管条目,因为我引用的程序集需要它。有人告诉我,使用托管提供程序的目的是使程序集更加独立和便携,因此必须触摸 machine.config 会破坏这个想法。

0 投票
1 回答
620 浏览

c# - 无法加载 ado.net MySQL

在 C# 下,框架 4.5。我安装了 Mysql 连接器 6.7.4。

如果我尝试动态加载 dll

我得到:无法找到或加载已注册的 .Net Framework 数据提供程序。

  • 我在 app.config 中添加了 mysql(我什至可以用 GetFactoryClasses() 列出它!)
  • 我试图将 MySQL 程序集放入 GAC

没有任何效果:(

0 投票
1 回答
527 浏览

.net - .net DbProviderFactory 线程安全吗?

我正在重构一些基于DbProviderFactory连接池的旧代码,但我遇到了一个简单的问题:DbProviderFactories.GetFactory()线程安全返回的对象吗?

现在的代码是这样的:

等等,等等。但这是每线程一次。显然不是我想要的。

我想知道我是否可以在任何地方使用“工厂”对象?我可以在同一个DbProviderFactory对象的不同线程中创建多个连接吗?我可以DbAdapter再次从同一个工厂创建类吗?

尽管它很愚蠢,但即使是具体子类的 MSDN 文档也没有说明您是否可以这样做。例如,该方法的msdn文档没有说明它是否是线程安全的。互联网上的一些不同指南只是打开一个实例,它会做线程池,这很好,但如果你这样做:SqlClientFactoryCreateDataAdapter()SqlConnection

那是线程安全的吗?这些工厂有多少?GetFactory那里的方法跨线程返回什么?总是同一个对象?或不?我正在修改的现有代码DbDataAdapter大量使用 s,所以我也不想更改所有这些。

那么获取工厂并从多个线程中使用它是线程安全的吗?

0 投票
0 回答
1272 浏览

c# - “ORA-01031: 权限不足”在 connection.Open();

我正在尝试使用 Oracle.ManagedDataAccess.Client 作为 SYSDBA 从 C# 桌面应用程序连接到 Windows 7 64x 版本上的 ORACLE 10g 数据库。

这是我来自配置文件的连接字符串:

这是代码:

我必须使用 DbProviderFactory 因为它必须是不同类型数据库的通用解决方案