我这几天刚开始接触Oracle10g,以前是用sql2000的,我连接数据库后生成页面报一下错误:
Keyword not supported: 'provider'. 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.ArgumentException: Keyword not supported: 'provider'.源错误: 
行 22: 
行 23:      OracleConnection conn=new OracleConnection();
行 24:  conn.ConnectionString="Provider=Microsoft OLE DB Provider for Oracle;User ID=sys;Password=sys;initial Catalog=orcl;Data Source=210.76.2.10";
行 25:  conn.Open();
行 26:             DataSet ds=new DataSet();
 源文件: g:\wwwroot\ktjj\qfwebent\qftmp\templet1\controls\webusercontrol1.ascx.cs    行: 24 我修改了好多连接字符串都不行,OracleClinet我也加载了,还是不行。请各位专家指导指导,谢谢了
下面是这个测试页面的全部代码
namespace qfwebent.Qftmp.templet1.Controls
{
using System;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
    using System.Data.SqlClient;
using System.Data.OracleClient;
using System.Data.OleDb;
/// <summary>
/// WebUserControl1 的摘要说明。
/// </summary>
public class WebUserControl1 : System.Web.UI.UserControl
{
protected System.Web.UI.WebControls.DataGrid DataGrid1; private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面     OracleConnection conn=new OracleConnection();
conn.ConnectionString="Provider=Microsoft OLE DB Provider for Oracle;User ID=sys;Password=sys;initial Catalog=orcl;Data Source=210.76.2.10";
conn.Open();
            DataSet ds=new DataSet();
            string sql="select * from users";
OracleDataAdapter dp=new OracleDataAdapter(sql,conn);
dp.Fill(ds,"A");
DataGrid1.DataSource=ds.Tables["A"].DefaultView;
DataGrid1.DataBind(); }
}
}

解决方案 »

  1.   

    你打开oracle90文件夹,里面有个Data文件夹把它的只读加上,然后应用,然后去掉只读,重启就好了,
      

  2.   

    Oracle客户端装了吗?
    用PL-SQL连接能成功吗?
      

  3.   

    好象就是1楼的方法
    下面是我的oracle9的数据库路径
    D:\ProgramFiles\oracle\oradata\xianyue"xianyue"是我的数据库名称,所有的数据都放在该文件夹下,
    修改一下该文件夹的属性就可以了。下面是我在web.config中的数据库连接字符串
    <connectionStrings>
        <add name="xianyue" providerName="System.Data.OracleClient" connectionString="Data Source=xianyue;user=yhgl;password=yhgl;"/>
      </connectionStrings>我是用的EnterpriseLibrary
    这是创建数据库对象的代码:
    Database g_db = DatabaseFactory.CreateDatabase("xianyue");
      

  4.   

    你用OracleConnection!!!!!!!!!!!!!!!!!!!!!!!
    连接串用:Provider=Microsoft OLE DB Provider for Oracle;User ID=sys;Password=sys;initial Catalog=orcl;Data Source=210.76.2.10?????????????????????????????????????????
      

  5.   

    不行呀,还有没有其它的方法了
    还有我找不到一楼说的那个Data文件夹
      

  6.   

     string ConnectionString="Data Source=s;user=system;password=manager;";               
    参考
      

  7.   

    "Provider=Microsoft OLE DB Provider for Oracle;User ID=sys;Password=sys;initial Catalog=orcl;Data Source=210.76.2.10";Provider 貌似不能放在ConnectionString里
      

  8.   

    我说明一下,我的程序在我本机上,而Oracle数据库则在210.76.2.10这台服务器上
    是我的本机程序要连数据库服务器上的
      

  9.   

    http://www.connectionstrings.com/oracle
      

  10.   

    客户机必须装Oracle客户端。看一下客户机里有没有tnsnames.ora.建议用System.Data.OracleClient,或者Oracle提供的Provider.
      

  11.   

    ASP.NET 3.5(1)第一群47448683 ,创群三年,刚刚清理,留上的都算得上是高手,现招人!
      

  12.   

    oracle的链接串是这样写的:<add key="connection_string" value="User ID=orcl;Data Source=ORCL;Password=WANGTM;"/>