看看 listener.ora或者用plsql、sqlplus 之类能不能连上

解决方案 »

  1.   


    都可以连上...TOAD也可以连上, 只有EF连不上.
      

  2.   

     prot=1521 这个应该不需要吧?
      

  3.   

    http://blogs.msdn.com/b/adonet/archive/2007/12/17/the-ado-net-entity-framework-not-just-for-sql-server.aspxOpenLink Software - Providing connectivity to Oracle, Informix, Ingres, Sybase, MySQL, PostgreSQL, DB2, Progress and Microsoft SQL Server databases, and any data source accessible via OpenLink ODBC or JDBC bridge drivers
      

  4.   

    这个帖子的意思,好象是EF 不支持直接连接oracle
      

  5.   

    http://thedatafarm.com/blog/data-access/oracle-releases-provider-with-ef-4-ef-4-1-and-ef4-2-support/
    这个貌似应该可以
      

  6.   

    先在PL/SQL里面去看看能不能连接上数据库,如果可以的话再去调试你的代码。
      

  7.   

    1.       在C:\Windows\assembly目录下查找是否有EFOracleProvider.dll,如果没有,解压EFOracleProvider.rar ,在命令行下运行Gacutil.exe /i EFOracleProvider.dll。修改machine.config文件。文件的路径为C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config文件夹中,找到machine.config文件,用记事本打开,找到<system.data>       <DbProviderFactories/></system.data>改成如下内容<system.data> <DbProviderFactories><add name="EF Oracle Data Provider" invariant="EFOracleProvider" description="EF Provider for Oracle testing" type="EFOracleProvider.EFOracleProviderFactory, EFOracleProvider, Version=1.0.0.0, Culture=neutral, PublicKeyToken=def642f226e0e59b"/>      <add name="Microsoft SQL Server Compact Data Provider" invariant="System.Data.SqlServerCe.3.5" description=".NET Framework Data Provider for Microsoft SQL Server Compact" type="System.Data.SqlServerCe.SqlCeProviderFactory, System.Data.SqlServerCe, Version=3.5.1.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91"/>        </DbProviderFactories>    </system.data>
      

  8.   

    楼上 这个命令Gacutil.exe /i EFOracleProvider.dll。 直接报错:
      

  9.   

    修改machine.config文件,一样不行。
      

  10.   

    .config中把Provider=改成"Oracle.ManagedDataAccess.Client"就可以了,也不知道你怎么用数据库生成的EF,生成出来就是这个