转自:http://www.cnblogs.com/csdm/archive/2010/02/02/1661808.html

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Dataset.aspx.cs" Inherits="Dataset" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>遍历Dataset并输出数据</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    
    </div>
    </form>
</body>
</html>

CS:

using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Data.SqlClient;

public partial class Dataset : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

//先来建立数据库
        DataSet Forum = new DataSet("Forum");

//再来建立两个数据表
        DataTable tbClass = new DataTable("tbClass");
        DataTable tbBoard = new DataTable("tbBoard");

//把两个数据表加入数据库
        Forum.Tables.Add(tbClass);
        Forum.Tables.Add(tbBoard);

//建立tbClass两列
        DataColumn ClassID = new DataColumn("ClassID", typeof(System.String));
        DataColumn ClassName = new DataColumn("ClassName", typeof(System.String));

//设定ClassID列不允许为空
        ClassID.AllowDBNull = false;

//把列加入tbClass表
        tbClass.Columns.Add(ClassID);
        tbClass.Columns.Add(ClassName);

//设定tdClass表的主键
        tbClass.PrimaryKey = new DataColumn[] { ClassID };

//建立tbBoard的三列
          DataColumn BoardID = new DataColumn("BoardID", typeof(System.String));
          DataColumn BoardName = new DataColumn("BoardName", typeof(System.String));
          DataColumn BoardClassID = new DataColumn("BoardClassID", typeof(System.String));

//设定BoardID列不允许为空
          BoardID.AllowDBNull = false;

//把列加入tbBoard表
          tbBoard.Columns.Add(BoardID);
          tbBoard.Columns.Add(BoardName);
          tbBoard.Columns.Add(BoardClassID);

//设定tbBoard表的主键
          tbBoard.PrimaryKey = new DataColumn[] { BoardID };

// 为两个表各加入5条记录
          for (int i = 1; i <= 5; i++)
          {
              //实例化tbClass表的行
              DataRow tbClassRow = tbClass.NewRow();
              //为行中每一列赋值
              tbClassRow["ClassID"] = Guid.NewGuid();
              tbClassRow["ClassName"] = string.Format("分类{0}", 1);

//把行加入tbClass表
              tbClass.Rows.Add(tbClassRow);
              //实例化tbBoard表的行
              DataRow tbBoardRow = tbBoard.NewRow();

//为行中每一列赋值
              tbBoardRow["BoardID"] = Guid.NewGuid();
              tbBoardRow["BoardName"] = string.Format("版块{0}", i);
              tbBoardRow["BoardclassID"] = tbClassRow["ClassID"];
              //把行加入tbBoard表

tbBoard.Rows.Add(tbBoardRow);

}

//DataRow tbClassRow = tbClass.NewRow();
          //for (int i = 1; i <= 5; i++)
          //{
          //    tbClassRow["ClassID"] = Guid.NewGuid();
          //    tbClassRow["ClassName"] = string.Format("分类{0}", i);
          //    tbClass.Rows.Add(tbClassRow);
          //}

//构建输出字符串
          System.Text.StringBuilder htmlStr = new System.Text.StringBuilder();
          //遍历Forum中的所有表(使用foreach)遍历
          foreach (DataTable dt in Forum.Tables)
          {
              //表开始
              htmlStr.Append("<table border='1' cellspacing='0' cellPadding='5' style='font-size:9pt;font:宋体'>");

//表头开始
              htmlStr.Append("<tr style='backgound-color:#F0F0F0'>");
              //遍历表中所有列(使用for遍历)
              for (int i = 0; i < dt.Columns.Count; i++)
              {
                  htmlStr.Append(string.Format("<td><strong>{0}</strong></td>", dt.Columns[i].ColumnName));
              }

//表头结束
              htmlStr.Append("</tr>");

//遍历表中所有行
              for (int i = 0; i < dt.Rows.Count; i++)
              {
                  //数据行开始
                  htmlStr.Append("<tr>");
                  //遍历行中列
                  for (int j = 0; j < dt.Columns.Count; j++)
                  {
                      if (!dt.Rows[i].IsNull(j))
                          htmlStr.Append(string.Format("<td>{0}</td>", dt.Rows[i][j]));
                  }
                  //数据行结束
                  htmlStr.Append("</tr>");
              }
              //表结束
              htmlStr.Append("</table><br>");
          }
          Response.Write(htmlStr);

}
}

遍历Dataset并输出数据实例的更多相关文章

  1. C# 手动编写 DataSet,DataTable 及遍历DataSet中的数据

    一.手动编写DataSet:    有时候不想从数据库导出 DataSet,或者有其他的需要,要将数据库里的DataSet包装成另一个样子,这个时候,了解DataSet的内部结构就非常必要.DataS ...

  2. Java学习笔记:基本输入、输出数据操作实例分析

    Java学习笔记:基本输入.输出数据操作.分享给大家供大家参考,具体如下: 相关内容: 输出数据: print println printf 输入数据: Scanner 输出数据: JAVA中在屏幕中 ...

  3. 遍历DataSet

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.D ...

  4. python3.4学习笔记(十四) 网络爬虫实例代码,抓取新浪爱彩双色球开奖数据实例

    python3.4学习笔记(十四) 网络爬虫实例代码,抓取新浪爱彩双色球开奖数据实例 新浪爱彩双色球开奖数据URL:http://zst.aicai.com/ssq/openInfo/ 最终输出结果格 ...

  5. [C#] 常用工具类——直接在浏览器输出数据

    /// <summary> /// <para> </para> /// 常用工具类——直接在浏览器输出数据 /// <para> ---------- ...

  6. 你好,C++(5)如何输出数据到屏幕、从屏幕输入数据与读写文件?

    2.2  基本输入/输出流 听过HelloWorld.exe的自我介绍之后,大家已经知道了一个C++程序的任务就是描述数据和处理数据.这两大任务的对象都是数据,可现在的问题是,数据不可能无中生有地产生 ...

  7. Ajax应用-Ajax传输JSON数据实例

    ———————————————————— <script type="text/javascript">            var client;          ...

  8. C#遍历DataSet与DataSet元素实现代码

    C#中的Dataset就像一个数据库,有多个表(Table),一般只有一个表,然后每个表中有行(DataRow)和列(DataColumn),DataRow[DataColumn]可以得到某行某列数据 ...

  9. php、mysql查询当天,查询本周,查询本月的数据实例(字段是时间戳)

    php.mysql查询当天,查询本周,查询本月的数据实例(字段是时间戳) //其中 video 是表名: //createtime 是字段: // //数据库time字段为时间戳 // //查询当天: ...

随机推荐

  1. JavaScript高级程序设计(四): 关键字With的使用

    一.关键字with 1.含义    with 语句可以方便地用来引用某个特定对象中已有的属性,但是不能用来给对象添加属性.要给对象创建新的属性,必须明确地引用该对象.   简单的说,with为一个或一 ...

  2. 暑假集训(1)第五弹 -----Rails(Uva514)

    PopPush城市有一座著名的火车站.这个国家到处都是丘陵.而这个火车站是建于上一个世纪.不幸的是,那时的资金有限.所以只能建立起一条路面铁轨.而且,这导致这个火车站在同一个时刻只能一个轨道投入使用, ...

  3. (转)UIColor 的使用

    os开发-UIColor的使用. 在ios开发中,经常遇到对UIColor的相关操作. 比如这样 self.backgroundColor = [UIColorredColor]; 这里的redCol ...

  4. IE 动态绑定click事件

    //必须先清除原有的事件 $(dom).attr("onclick", ""); //再重新绑定新的事件 $(dom).bind("click&quo ...

  5. mui H5 js动态添加不同类型的数据

    html页面需要添加的页面的数据格式 <ul class="mui-table-view" id="OA_task_1"> <li class ...

  6. PHP中的预定义超全局数组

    定义 超全局变量,是在全部作用域中始终可用的内置变量. PHP中的许多预定义变量都是"超全局的",这意味着它们在一个脚本的全部作用域中都可用. 在函数或方法中无需执行 global ...

  7. xml技术DTD约束定义

    XML约束 在XML技术中,可以编写一个文档来约束一个xml文档的书写规范,这称之为XML约束为什么需要XML约束? class.xml <stu><面积>?人怎么会有面积元素 ...

  8. 几个 JavaScript 奇技淫巧

    #1使用双等号给布尔变量赋值,很容易联想到 var a = b || 123; 的写法 var a = b == 123;#2快速转换为布尔值 !!a#3防止页面被 iframe 调用 if(top ...

  9. 数据库MySQL与xls文件的互导

    最近的一个项目需要将xls表导入到MySQL数据库中和将MySQL数据表导出到xls表中,在网上搜了很多资料,经过多次尝试终于实现了功能,废话不多说,在这粘贴出代码,希望可以帮到需要的朋友. 一.将. ...

  10. Django web 开发指南 no such table:

    在学习django web开发指南时,发布新博客点击save后会有error提示:no such table balabalabala... 百度了一下说重新运行manage.py syncdb 就可 ...