c# - 不支持关键字 'provider' 错误

标签 c# .net-3.5 sql-server-2000 connection-string

带有 SQL Server 2000 后端的 c#.Net 3.5,我的 app.config 文件中有一个连接字符串,如下所示

<add name="MFG_ConnectionString" 
  connectionString="Provider=SQLOLEDB;Data Source=MFG;Persist Security Info=True;Password=kb1234;User ID=kb;Initial Catalog=MFG" 
  providerName="System.Data.OleDb" /> 

此连接字符串是使用数据源配置向导构建的。使用此创建数据集并拖动 DataSource 元素以创建 DataGridView 填充并成功允许所有 CRUD 操作。

但是,我不希望通过数据绑定(bind)表单对此进行更改。我希望在代码的幕后执行此操作。由于这是旧版本的 SQL Server,我假设我必须使用 OleDbConnection 和其他 OleDb 对象来完成工作。当我尝试执行以下操作时:

OleDbConnection visualConnection = new OleDbConnection(ConfigurationManager.ConnectionStrings["MFG_ConnectionString"].ConnectionString);

我得到一个异常:“关键字不支持‘提供者’。
然而,如果我拿出供应商,我会被告知我必须提供一个。不确定为什么这会通过表单上的数据集起作用,但我无法创建自己的连接对象...有什么想法吗?

编辑 应该注意的是,当我最初创建到这个数据库的连接时,它告诉我我尝试连接的数据库不支持 SqlConnection,我必须选择另一个(我的当时选择的是 OleDb)。令我感到奇怪的是,此连接在幕后作为 SqlConnection 在连接字符串中没有提供程序但数据集随后中断......

最佳答案

SqlConnection 适用于 SQL 2000。您可以获得连接字符串示例 here

关于c# - 不支持关键字 'provider' 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5357230/

相关文章:

c# - 从 SID 获取 user@domain 而不是 domain\user

c# - WPF 中 ContextMenu 中的 CommandParameters

tsql - 如何使用 Transact SQL 将 JPEG 插入到图像类型的 SQL Server 2000 数据库字段中

sql-server - T-SQL/SQL Server 2000 中的 DayOfYear 函数

c# - 懒惰评估不那么懒惰?

c# - 如何将 win form 保存为 image/pdf?

c# - PRISM 中的 CreateModuleCatalog() 和 ConfigureModuleCatalog() 有什么区别?

.net - 如何在 .NET 中链接/嵌套 XSL 转换

.net - nAnt 是否仍受支持并适用于 .net 3.5/VS2008?

SQL - 2010 年仅进行过 dentry 检查的所有患者