Example #1
0
        /// <summary>
        /// DataTable 내용을 Xml Text로 변경한다.
        /// </summary>
        /// <param name="table">Instance of DataTable</param>
        /// <param name="writeMode">Xml Text 생성 모드</param>
        /// <returns>생성된 Xml 문자열</returns>
        public static string ToXmlText(DataTable table, XmlWriteMode writeMode = XmlWriteMode.WriteSchema) {
            table.ShouldNotBeNull("table");

            if(IsDebugEnabled)
                log.Debug("Convert DataTable to Xml Text. table=[{0}], writeMode=[{1}]", table.TableName, writeMode);

            var sb = new StringBuilder();

            using(var writer = new StringWriter(sb))
                table.WriteXml(writer, writeMode);

            return sb.ToString();
        }
Example #2
0
        /// <summary>
        /// 생성자
        /// </summary>
        /// <param name="table">DataTable 인스턴스</param>
        /// <param name="pageIndex">Page Index (0부터 시작)</param>
        /// <param name="pageSize">Page Size (보통 10)</param>
        /// <param name="totalItemCount">실제 DB에 있는 전체 Item의 수</param>
        public PagingDataTable(DataTable table, int pageIndex, int pageSize, int totalItemCount) {
            table.ShouldNotBeNull("table");
            pageIndex.ShouldBePositiveOrZero("pageIndex");

            _table = table;

            PageIndex = pageIndex;
            PageSize = (pageSize > 0) ? pageSize : totalItemCount;
            TotalItemCount = totalItemCount;
            TotalPageCount = (int)Math.Ceiling(totalItemCount / (double)PageSize);

            if(IsDebugEnabled)
                log.Debug("PagingDataTable이 생성되었습니다!!! " + ToString());
        }