首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

三层架构中objectdatasource怎么获取BLL层返回的值

2012-08-09 
三层架构中objectdatasource如何获取BLL层返回的值?我正在做一个文章管理系统的后台,程序结构大致是这样的

三层架构中objectdatasource如何获取BLL层返回的值?
我正在做一个文章管理系统的后台,程序结构大致是这样的:

页面上一个FormView绑定ObjectDataSource控件,ODS控件的SelectMethod,InsertMethod,UpdateMethod绑定BLL层的Article类的方法,BLL层的方法再调用DAL层的方法,执行具体的SQL语句以及返回值。

现在想在FormView插入一条记录之后,获得刚刚插入记录的ID值,在以前不分层的时候,直接用ADO.NET,构造一个output参数就能获得SELECT @ID==@@Identity的值,现在分三层了,DAL和BLL之间倒是很好传递参数,但是BLL想返回参数到页面该怎么做?

我看到ObjectDataSource的参数有Direction="Output"和"ReturnValue"的属性,但那似乎只针对直接写存储过程的,不好用在BLL层上。

[解决办法]
不需要参数,只要BLL的Insert方法返回插入记录的ID,然后在ObjectDataSource的Inserted事件里获取e.ReturnValue就可以了。

热点排行