/// <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(); }
/// <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()); }