zoukankan      html  css  js  c++  java
  • 为PetaPoco添加Fill方法 拓荒者

      因为公司框架中的很多地方用到DataTable,直接将DataTable作为数据源绑定到DataGridView,所以为PetaPoco添加了两个方法,一个是用以填充单个DataTable,一个是用以多结果集时填充DataSet。

            #region operation Fill
    
            /// <summary>
            /// 填充一个DataSet
            /// </summary>
            /// <param name="ds">引用的DataSet</param>
            /// <param name="sql">sql语句</param>
            /// <param name="args">参数</param>
            public void Fill(DataSet ds, string sql, params object[] args)
            {
                OpenSharedConnection();
    
                try
                {
                    using (var cmd = CreateCommand(_sharedConnection, sql, args))
                    {
                        using (DbDataAdapter dbDataAdapter = _factory.CreateDataAdapter())
                        {
                            dbDataAdapter.SelectCommand = (DbCommand)cmd;
                            dbDataAdapter.Fill(ds);
                        }
                    }
                }
                finally
                {
                    CloseSharedConnection();
                }
            }
    
            /// <summary>
            /// 填充一个DataTable
            /// </summary>
            /// <param name="dt">DataTable的引用</param>
            /// <param name="sql">Sql语句</param>
            /// <param name="args">参数</param>
            public void Fill(DataTable dt, string sql, params object[] args)
            {
                OpenSharedConnection();
    
                try
                {
                    using (var cmd = CreateCommand(_sharedConnection, sql, args))
                    {
                        using (DbDataAdapter dbDataAdapter = _factory.CreateDataAdapter())
                        {
                            dbDataAdapter.SelectCommand = (DbCommand)cmd;
                            dbDataAdapter.Fill(dt);
                        }
                    }
                }
                finally
                {
                    CloseSharedConnection();
                }
            }
    
            #endregion

    得到的DataTable可结合之前的一篇将DataTable转换为Json字符串的方法一起使用,无需转换实体,直接得到Json字符串,在前台使用。

  • 相关阅读:
    努力学习吧!
    C# 捕捉键盘事件
    oracle 11g 及 plsqldeveloper 相关操作
    Oracle 建表空间
    窗体程序 防止重复打开子窗体
    asp 下 ewebeditor 上传图片功能,在IE7,IE8 及更高版本上失效解决方法
    StringBuilder 在后台动态输出 html 代码
    起动停止 Oracle11g 三个服务的批处理写法
    MySQL 常用命令语句
    虚拟机—pychrm
  • 原文地址:https://www.cnblogs.com/youring2/p/2556456.html
Copyright © 2011-2022 走看看