(1) NuGetで『official oracle odp.net managed driver』をインストール
(2) App.config/Web.configにDataSourceを設定
(3) DB接続するクラスに『Oracle.ManagedDataAccess.Client』をusing
<?xml version="1.0" encoding="utf-8"?> | |
<configuration> | |
<configSections> | |
<section name="oracle.manageddataaccess.client" | |
type="OracleInternal.Common.ODPMSectionHandler, Oracle.ManagedDataAccess, Version=4.122.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342"/> | |
</configSections> | |
<startup> | |
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2"/> | |
</startup> | |
<system.data> | |
<DbProviderFactories> | |
<remove invariant="Oracle.ManagedDataAccess.Client"/> | |
<add name="ODP.NET, Managed Driver" invariant="Oracle.ManagedDataAccess.Client" description="Oracle Data Provider for .NET, Managed Driver" | |
type="Oracle.ManagedDataAccess.Client.OracleClientFactory, Oracle.ManagedDataAccess, Version=4.122.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342"/> | |
</DbProviderFactories> | |
</system.data> | |
<runtime> | |
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> | |
<dependentAssembly> | |
<publisherPolicy apply="no"/> | |
<assemblyIdentity name="Oracle.ManagedDataAccess" publicKeyToken="89b483f429c47342" culture="neutral"/> | |
<bindingRedirect oldVersion="4.121.0.0 - 4.65535.65535.65535" newVersion="4.122.1.0"/> | |
</dependentAssembly> | |
</assemblyBinding> | |
</runtime> | |
<oracle.manageddataaccess.client> | |
<version number="*"> | |
<dataSources> | |
<dataSource alias="DS_TEST" | |
descriptor="(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=XXX.XXX.XXX.XXX)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=DS_TEST)))"/> | |
</dataSources> | |
</version> | |
</oracle.manageddataaccess.client> | |
</configuration> |
using System; | |
using System.Collections.Generic; | |
using System.Data; | |
using System.Linq; | |
using System.Text; | |
using System.Threading.Tasks; | |
//using Dapper; | |
using Oracle.ManagedDataAccess.Client; | |
namespace ConsoleApplication5 | |
{ | |
class Program | |
{ | |
static void Main(string[] args) | |
{ | |
// Oracle接続 | |
using (OracleConnection oc = new OracleConnection()) | |
{ | |
//App.configのData Sourceを参照 | |
oc.ConnectionString = "User ID=USER1; Password=PASS2; Data Source=DS_TEST;"; | |
oc.Open(); | |
string sql = "SELECT COL_NO, COL_NAME FROM EMP ORDER BY 1"; | |
OracleDataAdapter oda = new OracleDataAdapter(sql, oc); | |
DataTable dt = new DataTable(); | |
oda.Fill(dt); | |
foreach (DataRow dr in dt.Rows) | |
{ | |
Console.WriteLine(String.Format("{0} : {1}", dr["COL_NO"], dr["COL_NAME"])); | |
} | |
////Dapperテスト | |
//oc.Query("SELECT COL_NO, COL_NAME FROM EMP ORDER BY 1") | |
// .ToList() | |
// .ForEach(r => Console.WriteLine(String.Format("{0} : {1}", r.COL_NO, r.COL_NAME))); | |
} | |
Console.ReadLine(); | |
} | |
} | |
} |
Hey! Thanks a lot! Do you know where could i find other examples for the rest of the CRUD operations?
I get this error
error CS0246: The type or namespace name 'Oracle' could not be found (are you missing a using directive or an
assembly reference?)
How can I load the oracle dependency? with nuget or dotnet?
Thanks
Thanks alot buddy! Very Helpful.
Thx, this is realy helpful.