您现在的位置: 中国男护士网 >> 考试频道 >> 计算机等级 >> 二级辅导 >> C语言 >> 辅导 >> 正文    
  NHibernate2.x应用:返回DataSet 【注册男护士专用博客】          

NHibernate2.x应用:返回DataSet

www.nanhushi.com     佚名   不详 

  虽然NHibernate是完全OO的,但我们还是有需要返回DataSet的时候。
  在ADO.NET里,要返回DataSet需要使用IDbDataAdapter, 那么通过NHibernate返回DataSet的关键就是如何创建合适的IDbDataAdapter实现类。
  在NHibernate里,由IDriver负责创建Connection和Command,我们可以扩展相应的Driver使其能创建DataAdapter,对于SqlClientDriver的扩展类如下:
  public class ExSqlClientDriver : SqlClientDriver
  {
  public IDbDataAdapter CreateDataAdapter()
  {
  return new SqlDataAdapter();
  }
  }
  对应的配置更改如下:
  <property name="connection.driver_class">Chapter01.ExSqlClientDriver, Chapter01</property>
  主调用代码:
  // 初始化
  Configuration cfg = new Configuration().Configure();
  ISessionFactory sf = cfg.BuildSessionFactory();
  // 得到扩展的Driver
  ExSqlClientDriver driver = (ExSqlClientDriver)sf.ConnectionProvider.Driver;
  // 打开数据库连接
  IDbConnection conn = ((ISessionFactoryImplementor)sf).OpenConnection();
  // Examda提示:创建Command
  IDbCommand cmd = conn.CreateCommand();
  cmd.CommandText = "select * from infos";
  DataSet ds = new DataSet();
  // 创建DataAdapter
  IDbDataAdapter da = driver.CreateDataAdapter();
  da.SelectCommand = cmd;
  // 填充Dataset
  da.Fill(ds); 来源:考

 

文章录入:杜斌    责任编辑:杜斌 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
     

    联 系 信 息
    QQ:88236621
    电话:15853773350
    E-Mail:malenurse@163.com
    免费发布招聘信息
    做中国最专业男护士门户网站
    最 新 热 门
    最 新 推 荐
    相 关 文 章
    没有相关文章
    专 题 栏 目