关键字不支持“提供商”错误

时间:2011-03-18 20:00:28

标签: 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操作。

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

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

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

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

1 个答案:

答案 0 :(得分:1)

SqlConnection适用于SQL 2000.您可以获得一个连接字符串样本here