ConnectionString中未指定OLE DB提供程序。 “提供商= SQLOLEDB;

时间:2014-04-21 07:29:26

标签: c# asp.net oledbconnection oledbdatareader executereader

我尝试使用C#运行查询,我遇到了以下问题

  

ConnectionString中未指定OLE DB提供程序。一个例子是'Provider = SQLOLEDB;

我的代码

string strConString = System.Configuration.ConfigurationManager.ConnectionStrings["WorkflowConnStr"].ConnectionString.ToString(); 
string sqlstr = "select * from table"        
OleDbConnection myConnection = new OleDbConnection(strConString);
try
     {myConnection.Open();}
catch (Exception err) 
     { System.Diagnostics.Debug.WriteLine(err.Message); }

OleDbCommand myCommand = new OleDbCommand(sqlstr, myConnection);
OleDbDataReader reader = myCommand.ExecuteReader();

的web.config

<add name="WorkflowConnStr" connectionString="Data Source=Server;Initial Catalog=DBName;user id=usr;password=password" providerName="System.Data.OleDb.OleDbConnection"/>

任何建议?

2 个答案:

答案 0 :(得分:7)

尝试将此添加到您的连接字符串

Provider=SQLNCLI10.1

所以它会是;

<add name="WorkflowConnStr" connectionString="Data Source=Server;Initial Catalog=DBName;user id=usr;password=password;Provider=SQLNCLI10.1" providerName="System.Data.OleDb.OleDbConnection"/>

答案 1 :(得分:0)

使用SqlConnection代替OleDbConnection