使用DataAdapter填充多个表(利用DataRelation)的实例代码
使用DataAdapter填充多个表(利用DataRelation)的实例代码
发布时间:2016-12-29 来源:查字典编辑
摘要:Default.aspx复制代码代码如下:ViewCode无标题页Default.aspx.cs复制代码代码如下:usingSystem;u...

使用DataAdapter填充多个表(利用DataRelation)的实例代码1

Default.aspx

复制代码 代码如下:

View Code

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

<!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>无标题页</title>

</head>

<body>

<form id="form1" runat="server">

<div>

</div>

<asp:Label ID="lbText" runat="server"></asp:Label>

</form>

</body>

</html>

Default.aspx.cs

复制代码 代码如下:

using System;

using System.Configuration;

using System.Data;

using System.Linq;

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.Xml.Linq;

using System.Data.SqlClient;

using System.Text;

public partial class _Default : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

string connectionString = ConfigurationSettings.AppSettings["strCon"];

SqlConnection mycon = new SqlConnection(connectionString);//创建数据库连接

string sqlCategory = "select ID,C_Name from Photo_Category";//查询相册分类表中信息

string sqlPhoto = "select CategoryID,Title from Photo";//查询相册表中信息

SqlDataAdapter da = new SqlDataAdapter(sqlCategory, mycon);//创建数据适配器

DataSet ds = new DataSet();//创建数据集

try

{

if (mycon.State.Equals(ConnectionState.Closed))

{ mycon.Open(); }//显式地打开数据库连接

da.Fill(ds, "Photo_Category");//填充相册分类表

da.SelectCommand.CommandText = sqlPhoto;

da.Fill(ds, "Photo");//填充相册信息表

}

finally

{

mycon.Close();//显式地关闭数据库连接

}

//创建DataRelation对象,关联表间关系

DataRelation relat = new DataRelation("Photo_Category", ds.Tables["Photo_Category"].Columns["ID"],ds.Tables["Photo"].Columns["CategoryID"]);

ds.Relations.Add(relat);//添加表间关系

StringBuilder builder = new StringBuilder("");

foreach (DataRow row in ds.Tables["Photo_Category"].Rows)

{

builder.Append("<b>");

builder.Append(row["C_Name"].ToString());

builder.Append("</b><ul>");

DataRow[] childRows = row.GetChildRows(relat);

foreach (DataRow childRow in childRows)

{

builder.Append("<li>");

builder.Append(childRow["Title"].ToString());

builder.Append("</li>");

}

builder.Append("</ul>");

}

lbText.Text += builder.ToString();//将运行结果输出到页面中

}

}

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新asp.net教程学习
热门asp.net教程学习
编程开发子分类