从asp.net核心连接到Oracle数据库

S B*_*S B 4 c# oracle database-connection visual-studio-2017 asp.net-core-2.0

首先,我已经阅读了有关连接到Oracle数据库的其他帖子,遗憾的是他们无法帮助我.我将描述我所尝试的内容,并希望有人可以指出我正确的方向.

首先我尝试安装ODTwithODAC122010,正如许多消息来源所说的那样,但是这个给了我一些退出非零退出代码的过程.它说它很成功,但似乎没有任何改变.

在我旁边尝试安装ODTforVS2017_122010.exe我有一个更新的Visual Studio专业人员.它说安装是成功的.然而,这似乎没有像教程描述那样添加任何选项.有了这个,我的意思是应该有一些可见的东西;

visual studio工具 - >连接到数据库 - > Oracle数据库,数据提供程序菜单应该有类似Oracle的东西..这不显示不幸...

所以我尝试连接到我的visual studio项目中的数据库,为oracle选择.net框架数据提供程序.这里要求三个字段:服务器名称用户名和密码.我尝试填写它们但它无法连接.对于我使用的服务器名称:IPADDRESS:PORT/SERVICENAME

之后,我放弃了通过visual studio连接到数据库的希望(我可以使用oracle SQL开发人员连接到数据库).

然后我安装以下nuget包: - Oracle.ManagedDataAccess - System.Configuration.ConfigurationManager - System.Security.Permissions - System.Security.Principal

并写了一段代码连接到数据库,如:

using(OracleConnection connect = new OracleConnection(ConnectionDetails.returnConnectionString()))
{
    connect.Open();
    Console.WriteLine("did it work?" + connect.ServerVersion);
}
Run Code Online (Sandbox Code Playgroud)

returnConnectionString返回的位置:

"User Id=MYID;Password=MYPASSWORD;Data Source=IPADDRESS:PORT/SERVICENAME"
Run Code Online (Sandbox Code Playgroud)

不幸的是,当我尝试运行它时,我面临一个未找到的ExecutionContext.cs.这发生在connect.open();

我将在以下位置启动此代码:

    public static void Main(string[] args)
    {
        var a = new DatabaseConnector();
        a.test();
        BuildWebHost(args).Run();
    }
Run Code Online (Sandbox Code Playgroud)

最后,我想明确表示我正在使用ASP.NET Core,您的建议和帮助将不胜感激!

小智 6

确切地说,

  1. 右键单击您的项目
  2. 转到管理NuGet包
  3. 搜索Oracle.manageddataaccess.core.您将获得Nuget包2.12.0-beta2版本.添加它.
  4. 在页面中,导入如下以访问oracle类

    使用Oracle.ManagedDataAccess.Client;

这是Oracle数据访问提供商的测试版,PROD版本应该在2018年第三季度末提供.