您的位置:首页 > 数据库 > Oracle

Linq to Oracle 使用教程(七)将数据库的存储过程映射到方法

2010-12-04 16:47 1106 查看
点击这里返回目录

双击 GET_CATEGORIES_AND_PRODUCTS 存储过程,代码如下:

代码

static void Main(string[] args)
{
var dc = new NorthwindDataContext() { Log = Console.Out };
OracleRefCursor cursor1 = null;
OracleRefCursor cursor2 = null;
dc.Connection.Open();
dc.GetCategoryAndProducts(out cursor1, out cursor2);
var categories = dc.Translate<Category>(cursor1.GetDataReader()).ToArray();
var products = dc.Translate<Product>(cursor2.GetDataReader()).ToArray();
dc.Connection.Close();

foreach (var category in categories)
Console.WriteLine("{0} {1}", category.Categoryid, category.Categoryname);

foreach (var product in products)
Console.WriteLine("{0} {1}", product.Productid, product.Productname);
}


由于需要用到 Reader , 因此连接必须一定保持打开状态,直接数据读取完毕。因此需要显式打开连接(dc.Connection.Open),在使用完后再关闭(dc.Connection.Close)。

点击这里返回目录
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐