/// <summary>
/// <para> </para>
///  常用工具类——直接在浏览器输出数据
/// <para> -------------------------------------------------------------</para>
/// <para> DumpDataTable:接在浏览器输出数据DataTable</para>
/// <para> DumpListItemILIST:直接在浏览器输出数据ILIST<ListItem></para>
/// <para> DumpDataTableILIST:直接在浏览器输出数据DataTableILIST</para>
/// <para> DumpIntArrILIST:直接在浏览器输出数据整型数组ILIST<int[]></para>
/// <para> DumpStrArrILIST:直接在浏览器输出数据字符串数组的ILIST<string[]></para>
/// <para> DumpDataSet:直接在浏览器输出数据DataSet对象</para>
/// <para> DumpObjectArr2:直接在浏览器中输出二维数组</para>
/// </summary>
using System;
using System.Collections;
using System.Collections.Generic;
using System.Text;
using System.Web;
using System.Web.UI.WebControls;
using System.Resources;
using System.Data;
using System.Data.SqlClient;
using System.Diagnostics; namespace Utils
{
/// <summary>
/// <para> </para>
///  常用工具类——直接在浏览器输出数据
/// <para> -------------------------------------------------------------</para>
/// <para> DumpDataTable:接在浏览器输出数据DataTable</para>
/// <para> DumpListItemILIST:直接在浏览器输出数据ILIST<ListItem></para>
/// <para> DumpDataTableILIST:直接在浏览器输出数据DataTableILIST</para>
/// <para> DumpIntArrILIST:直接在浏览器输出数据整型数组ILIST<int[]></para>
/// <para> DumpStrArrILIST:直接在浏览器输出数据字符串数组的ILIST<string[]></para>
/// <para> DumpDataSet:直接在浏览器输出数据DataSet对象</para>
/// <para> DumpObjectArr2:直接在浏览器中输出二维数组</para>
/// </summary> public class DumpHelper
{
#region 构造方法设置
/// <summary>
/// 数据类型颜色
/// </summary>
protected static string ColorDataType = "red";
/// <summary>
/// 行数颜色
/// </summary>
protected static string ColorRowCount = "red";
/// <summary>
/// 列数颜色
/// </summary>
protected static string ColorColumnsCount = "red";
/// <summary>
/// 无数据时颜色
/// </summary>
protected static string ColorNoData = "red";
/// <summary>
/// 序号颜色
/// </summary>
protected static string ColorSerial = "black";
/// <summary>
/// 字段名颜色
/// </summary>
protected static string ColorFieldName = "blue";
/// <summary>
/// 字段类型颜色
/// </summary>
protected static string ColorFieldType = "#cc9999";
/// <summary>
/// 字段值颜色
/// </summary>
protected static string ColorFieldValue = "#9933ff";
/// <summary>
/// 最终输出字符串
/// </summary>
protected static string DumpStr = string.Empty;
/// <summary>
/// 输出字符串DIV开始
/// </summary>
protected static string DivRef = "<div style='font-size:14px;line-height:20px;margin:5px 0 0 5px;'>";
#endregion #region 直接在浏览器输出数据DataTable
/// <summary>
/// 直接在浏览器输出数据DataTable
/// </summary>
/// <param name="Dt">DataTable表格</param>
public static void DumpDataTable(DataTable Dt)
{
if (Dt != null)
{
int DtRowsCount = Dt.Rows.Count;
int DtColumnsCount = Dt.Columns.Count;
DumpStr = DivRef + "数据类型:<font color=" + ColorDataType + ">TableDate</font> [ 表名:" + Dt.TableName + " 行数:<font color=" + ColorRowCount + ">" + DtRowsCount + "</font>,列数:<font color=" + ColorColumnsCount + ">" + DtColumnsCount + "</font> ] <hr>";
if (DtRowsCount < 1) DumpStr += " <font color=" + ColorNoData + ">无表格行数据!</font>";
else
{
for (int i = 0; i < DtRowsCount; i++)
{
DumpStr += "( Row:<font color=" + ColorSerial + ">" + i + "</font> ) => ";
for (int j = 0; j < DtColumnsCount; j++)
{
string ColumnName = Dt.Columns[j].ColumnName.ToString();
string ColumnType = Dt.Columns[j].DataType.ToString();
DumpStr += "  [" + j + "] <font color=" + ColorFieldName + ">" + ColumnName + "</font> ( <font color=" + ColorFieldType + ">" + ColumnType + "</font> ) => \"<font color=" + ColorFieldValue + ">" + Dt.Rows[i][ColumnName].ToString() + "</font>\"";
}
DumpStr += "<p>";
}
}
}
HttpContext.Current.Response.Write(DumpStr + "</div>");
}
#endregion #region 直接在浏览器输出数据ILIST<ListItem>
/// <summary>
/// 直接在浏览器输出数据ILIST<ListItem>
/// </summary>
/// <param name="ListItems">ILIST<ListItem>泛型数据</param>
public static void DumpListItemILIST(IList<ListItem> ListItems)
{
if (ListItems != null)
{
int ListCount = ListItems.Count;
DumpStr = DivRef + "数据类型:<font color=" + ColorDataType + ">IList<ListItem></font> [ 项目数:<font color=" + ColorRowCount + ">" + ListCount + "</font> ] <hr>";
if (ListCount < 1) DumpStr += " <font color=" + ColorNoData + ">泛型中无数据!</font>";
else
{
for (int i = 0; i < ListCount; i++)
{
DumpStr += "( " + i + " ) => ";
string Texts = ListItems[i].Text.ToString();
string Values = ListItems[i].Value.ToString();
DumpStr += "  <font color=" + ColorFieldName + ">[ Text ]</font> => \"<font color=" + ColorFieldValue + ">" + Texts + "</font>\"";
DumpStr += "  <font color=" + ColorFieldName + ">[ Value ]</font> => \"<font color=" + ColorFieldValue + ">" + Values + "</font>\"";
}
}
}
HttpContext.Current.Response.Write(DumpStr + "</div>");
}
#endregion #region 直接在浏览器输出数据DataTableILIST
/// <summary>
/// 直接在浏览器输出数据DataTableILIST
/// </summary>
/// <param name="ListDataTable">ILIST<ListDataTable>泛型数据</param>
public static void DumpDataTableILIST(IList<DataTable> ListDataTable)
{
if (ListDataTable != null)
{
int ListCount = ListDataTable.Count;
DumpStr = DivRef + "数据类型:<font color=" + ColorDataType + ">IList<DataTable></font> [ DataTable数:<font color=" + ColorRowCount + ">" + ListCount + "</font> ] <hr>";
if (ListCount < 1) DumpStr += " <font color=" + ColorNoData + ">泛型中无数据!</font>";
else
{
for (int i = 0; i < ListCount; i++)
{
if (i > 0) DumpStr += "<hr>";
DataTable Dt = ListDataTable[i];
int DtRowsCount = Dt.Rows.Count;
int DtColumnsCount = Dt.Columns.Count;
DumpStr += "( 表序号:" + i + " 表名:" + Dt.TableName + " ) => [ 行数:<font color=" + ColorRowCount + ">" + DtRowsCount + "</font>,列数:<font color=" + ColorColumnsCount + ">" + DtColumnsCount + "</font> ]";
if (DtRowsCount < 1) DumpStr += " <font color=" + ColorNoData + ">表格中无数据!</font><p>";
else
{
for (int k = 0; k < DtRowsCount; k++)
{
DumpStr += "  ( Row:<font color=" + ColorSerial + ">" + k + "</font> ) => ";
for (int j = 0; j < DtRowsCount; j++)
{
string ColumnName = Dt.Columns[j].ColumnName.ToString();
string ColumnType = Dt.Columns[j].DataType.ToString();
DumpStr += "    [" + j + "] <font color=" + ColorFieldName + ">" + ColumnName + "</font> ( <font color=" + ColorFieldType + ">" + ColumnType + "</font> ) => \"<font color=" + ColorFieldValue + ">" + Dt.Rows[k][ColumnName].ToString() + "</font>\"";
}
DumpStr += "<p>";
}
}
}
}
}
HttpContext.Current.Response.Write(DumpStr + "</div>");
}
#endregion #region 直接在浏览器输出数据整型数组ILIST<int[]>
/// <summary>
/// 直接在浏览器输出数据整型数组ILIST<int[]>
/// </summary>
/// <param name="IntList">ILIST<Int[]>泛型数据</param>
public static void DumpIntArrILIST(IList<int[]> IntList)
{
if (IntList != null)
{
int ListCount = IntList.Count;
DumpStr = DivRef + "数据类型:<font color=" + ColorDataType + ">IList<Int[]></font> [ Int[]个数:<font color=" + ColorRowCount + ">" + ListCount + "</font> ] <hr>";
if (ListCount < 1) DumpStr += " <font color=" + ColorNoData + ">泛型中无数据!</font>";
else
{
for (int i = 0; i < ListCount; i++)
{
int[] IntArr = IntList[i];
int IntArrCount = IntArr.Length;
DumpStr += "( Int[]:<font color=" + ColorSerial + ">" + i + "</font> ) => 数组元素个数:<font color=" + ColorSerial + ">" + IntArrCount + "</font>";
if (IntArrCount < 1) DumpStr += "  <font color=" + ColorNoData + ">数组中无数据</font><p>";
else
{
for (int j = 0; j < IntArrCount; j++)
{
DumpStr += "  [" + j + "] ( <font color=" + ColorFieldType + ">Int</font> ) => \"<font color=" + ColorFieldValue + ">" + IntArr[j].ToString() + "</font>\"";
}
}
}
}
}
HttpContext.Current.Response.Write(DumpStr + "</div>");
}
#endregion #region 直接在浏览器输出数据字符串数组的ILIST<string[]>
/// <summary>
/// 直接在浏览器输出数据字符串数组的ILIST<string[]>
/// </summary>
/// <param name="StrList">ILIST<String[]>泛型数据</param>
public static void DumpStrArrILIST(IList<string[]> StrList)
{
if (StrList != null)
{
int ListCount = StrList.Count;
DumpStr = DivRef + "数据类型:<font color=" + ColorDataType + ">IList<String[]></font> [ String[]个数:<font color=" + ColorRowCount + ">" + ListCount + "</font> ] <hr>";
if (ListCount < 1) DumpStr += " <font color=" + ColorNoData + ">泛型中无数据!</font>";
else
{
for (int i = 0; i < ListCount; i++)
{
string[] StrArr = StrList[i];
int StrArrCount = StrArr.Length;
DumpStr += "( String[]:<font color=" + ColorSerial + ">" + i + "</font> ) => 数组元素个数:<font color=" + ColorSerial + ">" + StrArrCount + "</font>";
if (StrArrCount < 1) DumpStr += "  <font color=" + ColorNoData + ">数组中无数据</font><p>";
else
{
for (int j = 0; j < StrArrCount; j++)
{
DumpStr += "  [" + j + "] ( <font color=" + ColorFieldType + ">Int</font> ) => \"<font color=" + ColorFieldValue + ">" + StrArr[j].ToString() + "</font>\"";
}
}
}
}
}
HttpContext.Current.Response.Write(DumpStr + "</div>");
}
#endregion #region 直接在浏览器输出数据DataSet对象
/// <summary>
/// 直接在浏览器输出数据DataSet对象
/// </summary>
/// <param name="DS">DataSet对象</param>
public static void DumpDataSet(DataSet DS)
{
if (DS != null)
{
int DtCount = DS.Tables.Count;
DumpStr = DivRef + "数据类型:<font color=" + ColorDataType + ">DataSet对象</font> [ DataSet中表格个数:<font color=" + ColorRowCount + ">" + DtCount + "</font> ] <hr>";
if (DtCount < 1) DumpStr += " <font color=" + ColorNoData + ">DataSet对象中无表格!</font>";
else
{
for (int i = 0; i < DtCount; i++)
{
if (i > 0) DumpStr += "<hr>";
DataTable Dt = DS.Tables[i];
int DtRowsCount = Dt.Rows.Count;
int DtColumnsCount = Dt.Columns.Count;
DumpStr += "( 表序号:" + i + " 表名:" + Dt.TableName + " ) => [ 行数:<font color=" + ColorRowCount + ">" + DtRowsCount + "</font>,列数:<font color=" + ColorColumnsCount + ">" + DtColumnsCount + "</font> ]";
if (DtRowsCount < 1) DumpStr += " <font color=" + ColorNoData + ">表格中无数据!</font><p>";
else
{
for (int k = 0; k < DtRowsCount; k++)
{
DumpStr += "  ( Row:<font color=" + ColorSerial + ">" + k + "</font> ) => ";
for (int j = 0; j < DtColumnsCount; j++)
{
string ColumnName = Dt.Columns[j].ColumnName.ToString();
string ColumnType = Dt.Columns[j].DataType.ToString();
DumpStr += "    [" + j + "] <font color=" + ColorFieldName + ">" + ColumnName + "</font> ( <font color=" + ColorFieldType + ">" + ColumnType + "</font> ) => \"<font color=" + ColorFieldValue + ">" + Dt.Rows[k][ColumnName].ToString() + "</font>\"";
}
DumpStr += "<p>";
}
}
}
}
}
HttpContext.Current.Response.Write(DumpStr + "</div>");
}
#endregion #region 直接在浏览器中输出二维数组
/// <summary>
/// 直接在浏览器中输出二维数组
/// </summary>
/// <param name="ObjArr">二维数组</param>
public static void DumpObjectArr2(object[] ObjArr)
{
if (ObjArr != null)
{
int ObjLength = ObjArr.Length;
DumpStr = DivRef + "数据类型:<font color=" + ColorDataType + ">Object数组</font> [ 数组中元素个数:<font color=" + ColorRowCount + ">" + ObjLength + "</font> ] <hr>";
for (int i = 0; i < ObjLength; i++)
{
DumpStr += "  ( <font color=" + ColorSerial + ">" + i + "</font> ) ";
object Arri = ObjArr[i];
DumpStr += " ( ";
DumpStr += "<font color=" + ColorFieldType + ">" + Arri.GetType().ToString() + "</font>";
DumpStr += " ) ";
DumpStr += " => <font color=" + ColorFieldValue + ">\"" + Arri + "\"</font>";
}
}
HttpContext.Current.Response.Write(DumpStr + "</div>");
}
#endregion public static void DumpObjectArr(object[] ObjArr)
{
if (ObjArr != null)
{
HttpContext.Current.Response.Write(ObjArr.GetType());
}
}
}
}

  

[C#] 常用工具类——直接在浏览器输出数据的更多相关文章

  1. [C#] 常用工具类——文件操作类

    /// <para> FilesUpload:工具方法:ASP.NET上传文件的方法</para> /// <para> FileExists:返回文件是否存在&l ...

  2. PHP常用工具类

    <?php namespace isslib\Util; use think\Config; /** * 常用工具类 * User: xaxiong * Date: 2016/12/19 * T ...

  3. javascript常用工具类整理(copy)

    JavaScript常用工具类 类型 日期 数组 字符串 数字 网络请求 节点 存储 其他 1.类型 isString (o) { //是否字符串 return Object.prototype.to ...

  4. commons-lang常用工具类StringEscapeUtils使用--转

    https://my.oschina.net/ydsakyclguozi/blog/341496 在apache commons-lang(2.3以上版本)中为我们提供了一个方便做转义的工具类,主要是 ...

  5. Java项目案例之---常用工具类练习

    常用工具类练习 1. 请根据控制台输入的特定日期格式拆分日期,如:请输入一个日期(格式如:**月**日****年),经过处理得到:****年**月**日 import java.util.Scanne ...

  6. JavaEE-实验一 Java常用工具类编程

    该博客仅专为我的小伙伴提供参考而附加,没空加上代码具体解析,望各位谅解 1.  使用类String类的分割split 将字符串  “Solutions to selected exercises ca ...

  7. 简单了解Spring中常用工具类_java - JAVA

    文章来源:嗨学网 敏而好学论坛www.piaodoo.com 欢迎大家相互学习 文件资源操作 Spring 定义了一个 org.springframework.core.io.Resource 接口, ...

  8. 浅谈集合框架三、Map常用方法及常用工具类

    最近刚学完集合框架,想把自己的一些学习笔记与想法整理一下,所以本篇博客或许会有一些内容写的不严谨或者不正确,还请大神指出.初学者对于本篇博客只建议作为参考,欢迎留言共同学习. 之前有介绍集合框架的体系 ...

  9. Maven基础&&Spring框架阶段常用工具类整理

    常用工具类 1.密码加密工具类: package com.itheima.utils; import java.security.MessageDigest; import sun.misc.BASE ...

随机推荐

  1. 使用ajax和history.pushState无刷新改变页面URL onpopstate(转)

    Javascript代码 var htmlData1 = $.ajax(    {    url: "/getXXXResponse",    async: false }).re ...

  2. 浅谈JavaScript的push()函数

    push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度.返回值是把指定的值添加到数组后的新长度. 语法:arrayObject.push(newelement1,newelement2,. ...

  3. 定位 - CoreLocation - INTULocationManager

    https://github.com/intuit/LocationManager #import "ViewController.h" #import "INTULoc ...

  4. MYSQL数据库备份与恢复【转】

    mysqldump -h主机名  -P端口 -u用户名 -p密码 (–database) 数据库名 > 文件名.sql  在window上需要通过CMD进入mysql安装目录下的bin目录下执行 ...

  5. Uva 1354 Mobile Computing

    题目链接 题意: 在一个宽为r 的房间里, 有s个砝码, 每个天平的一端要么挂砝码, 要么挂另一个天平, 并且每个天平要保持平衡. 求使得所有砝码都放在天平上, 且总宽度不超过房间宽度的最大值. 思路 ...

  6. hdu 2460

    这是一道双联通分量的题,要用到LCA算法: 听说这个算法有两种实现方式:一个是dfs+线段树或着RMQ;一个是用tarjin: 我用的是tarjin: 题目比较简单,就是每次加了一条边之后剩下的桥的个 ...

  7. DZ的伪静态神马的终于OK了

    十分感谢开发“凤凰图集”的onexin团队!帮忙搞定了伪静态!这玩意儿折腾了俺好多功夫,人家瞬间就搞定.

  8. 【整理】各种Python的IDE(集成开发环境)的总结和对比

    原地址:http://www.tuicool.com/articles/rMVJNn 原文  http://www.crifan.com/summary_common_python_ide_pyscr ...

  9. 快速搭建PHP开发环境(PhpStorm+EasyPHP)

    写在开头,何为PHP(拍黄片)? P HP是一种开源的通用计算机脚本语言,尤其适用于网络开发并可嵌入HTML中使用(维基百科). 从上我们得出,何为PHP? 1.开源脚本语言. 2.用于网络开发可嵌入 ...

  10. PHP 切割字符串 点号 不用双斜杠

    $name = "tupian.png"; $nameArr = explode(".", $name); 习惯了Java的程序员容易写成 $nameArr = ...