Oracle:ODP.NET Managed 小试牛刀

前端之家收集整理的这篇文章主要介绍了Oracle:ODP.NET Managed 小试牛刀前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
Oracle:ODP.NET Managed 小试牛刀

“ODP.NET Managed”发布已经有一段时间了,近期正好有一个新项目,想尝试用一下,参考园子里的文章:《.NET Oracle Developer的福音——ODP.NET Managed正式推出》到Oracle官网 下载 ODP.NET_Managed121010.zip 大约1.9M,解压后目录结构如下:

核心的dll,就是common目录下的Oracle.ManagedDataAccess.dll,不象ODP.NET以前的版本,这次终于不用区分x86/x64版本了,不管是32位还是64位,都是同一个dll。

至于manged/x64、managed/x86这二个目录,是用来向.NET x86或.NET x64的GAC注册程序集的,运行相关的configure.bat后,会自动将common中的Oracle.ManagedDataAccess.dll放入GAC,这样在vs中添加引用时,能自动找到GAC中的相关命名空间

运行了configure.bat的机器上,应用程序的bin目录下不必包括Oracle.ManagedDataAccess.dll,就能正常运行了。

注:configure.bat这一步是可选的添加引用时,完全也可以通过直接浏览Oracle.ManagedDataAccess.dll所在位置,将该dll复制到bin目录下.

下面是最基本的使用代码

 1 using System;
 2  System.Data;
 3  Oracle.ManagedDataAccess.Client;
 4 
 5 namespace ODP.NET
 6 {
 7     class Program
 8     {
 9         static void Main(string[] args)
10         {
11             OracleConnection conn = null;
12             try
13             {
14                 conn = OpenConn();
15                 var cmd = conn.CreateCommand();
16                 cmd.CommandText = "select * from s_awb_master where rownum=1"17                 cmd.CommandType = CommandType.Text;
18                 var reader = cmd.ExecuteReader();
19                 while (reader.Read())
20                 {
21                     Console.WriteLine(string.Format(AwbPre:{0},AwbNo:{1}",reader[AwbPre"],0)">AwbNo]));
22                 }
23             }
24             catch (Exception ex)
25 26                 Console.WriteLine(ex.Message);
27 28             finally
29 30                 CloseConn(conn);
31 32             Console.Read();
33         }
34 
35 
36         static OracleConnection OpenConn()
37 38             OracleConnection conn = new OracleConnection();
39             conn.ConnectionString = Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=***.***.***.***)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=***)));Persist Security Info=True;User ID=***;Password=***;40             conn.Open();
41             return conn;
42 43 
44         void CloseConn(OracleConnection conn)
45 46             if (conn == null) { ; }
47             48 49                 if (conn.State != ConnectionState.Closed)
50 51                     conn.Close();
52 53 54              (Exception e)
55 56                 Console.WriteLine(e.Message);
57 58             59 60                 conn.Dispose();
61 62 63     }
64 }

最后附上dll下载:http://files.cnblogs.com/yjmyzz/Oracle.ManagedDataAccess.zip

作者: 菩提树下的杨过
出处: http://yjmyzz.cnblogs.com
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
1
0
« 上一篇C#:Func的同步、异步调用
» 下一篇Mybatis.Net 整合 ODP.NET Managed
posted @ 2013-11-01 10:00 菩提树下的杨过 阅读( 8446) 评论( 6) 编辑 收藏
#1楼 2013-12-26 20:53 古秋
不知道楼主遇到我这个问题没有

http://q.cnblogs.com/q/58385/
#2楼 2014-01-04 10:51 古秋
Oracle.ManagedDataAccess 的OracleCommandBuilder
生成insert update delete 语句有问题
#3楼 2014-03-19 16:51 JeffreyChen
请问是否需要装Oracle 12c,我使用ODP.NET_Managed121012+Oracle 11g R2测试时,报错:An unhandled exception of type 'Oracle.ManagedDataAccess.Client.OracleException' occurred in Oracle.ManagedDataAccess.dll

Additional information: ORA-12154: TNS: 无法解析指定的连接标识符
#4楼 2015-01-21 15:03 MR_ke
我win7下可以,xp不行。
有完整的安装包吗?发我一个谢谢。
4567146@qq.com
http://pic.cnblogs.com/face/u88170.jpg
#5楼 2016-02-23 15:17 eastday
多谢, 成功运行!
#6楼 3418972 2016/4/27 21:14:29 2016-04-27 21:14 小熊小熊
XP系统支持吗?

猜你在找的Oracle相关文章