為PetaPoco添加Fill方法

來源:互聯網
上載者:User

  因為公司架構中的很多地方用到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字串,在前台使用。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.