DataSet使用方法

aspx

 

ExpandedBlockStart.gif 代码
<% @ Page language = " c# "  Codebehind = " CodeUse.aspx.cs "  AutoEventWireup = " false "  Inherits = " DsAndXML.CodeUse "   %>
<! DOCTYPE HTML PUBLIC  " -//W3C//DTD HTML 4.0 Transitional//EN "   >
< HTML >
    
< HEAD >
        
< title > CodeUse </ title >
        
< meta content = " Microsoft Visual Studio 7.0 "  name = " GENERATOR " >
        
< meta content = " C# "  name = " CODE_LANGUAGE " >
        
< meta content = " JavaScript "  name = " vs_defaultClientScript " >
        
< meta content = " http://schemas.microsoft.com/intellisense/ie5 "  name = " vs_targetSchema " >
    
</ HEAD >
    
< body MS_POSITIONING = " GridLayout " >
        
< form id = " CodeUse "  method = " post "  runat = " server " >
            
< FONT face = " 宋体 " >
                
< asp:button id = " btnCreate "  style = " Z-INDEX: 100; LEFT: 31px; POSITION: absolute; TOP: 43px "  runat = " server "  Height = " 36 "  Width = " 130 "  Text = " 创建数据集和数据表 " ></ asp:button >
                
< asp:Button id = " btnUpdateDs "  style = " Z-INDEX: 117; LEFT: 35px; POSITION: absolute; TOP: 439px "  runat = " server "  Height = " 36px "  Width = " 131px "  Text = " 赋值 " ></ asp:Button >
                
< asp:Label id = " Label3 "  style = " Z-INDEX: 112; LEFT: 352px; POSITION: absolute; TOP: 395px "  runat = " server " > 列号: </ asp:Label >
                
< asp:Label id = " Label2 "  style = " Z-INDEX: 111; LEFT: 209px; POSITION: absolute; TOP: 395px "  runat = " server " > 行号: </ asp:Label >
                
< asp:Button id = " btnUpdateMID "  style = " Z-INDEX: 107; LEFT: 37px; POSITION: absolute; TOP: 330px "  runat = " server "  Height = " 36 "  Width = " 131 "  Text = " 修改MasterID " ></ asp:Button >
                
< asp:Button id = " btnAddForeign "  style = " Z-INDEX: 106; LEFT: 35px; POSITION: absolute; TOP: 278px "  runat = " server "  Height = " 36 "  Width = " 131 "  Text = " 添加外键 " ></ asp:Button >
                
< asp:Button id = " Button1 "  style = " Z-INDEX: 105; LEFT: 31px; POSITION: absolute; TOP: 217px "  runat = " server "  Height = " 36px "  Width = " 130px "  Text = " 添加唯一键 " ></ asp:Button >< asp:button id = " btnAddRow "  style = " Z-INDEX: 102; LEFT: 31px; POSITION: absolute; TOP: 161px "  runat = " server "  Height = " 36px "  Width = " 130px "  Text = " 添加行 " ></ asp:button >< asp:button id = " btnAddColumn "  style = " Z-INDEX: 101; LEFT: 31px; POSITION: absolute; TOP: 102px "  runat = " server "  Height = " 36px "  Width = " 130px "  Text = " 添加列 " ></ asp:button >< asp:datagrid id = " dgMaster "  style = " Z-INDEX: 103; LEFT: 242px; POSITION: absolute; TOP: 40px "  runat = " server "  Height = " 120px "  Width = " 485px " ></ asp:datagrid >< asp:datagrid id = " dgChild "  style = " Z-INDEX: 104; LEFT: 240px; POSITION: absolute; TOP: 193px "  runat = " server "  Height = " 111px "  Width = " 479px " ></ asp:datagrid >
                
< asp:TextBox id = " tbRow "  style = " Z-INDEX: 108; LEFT: 275px; POSITION: absolute; TOP: 395px "  runat = " server "  Width = " 54px " ></ asp:TextBox >
                
< asp:TextBox id = " tbCol "  style = " Z-INDEX: 109; LEFT: 422px; POSITION: absolute; TOP: 395px "  runat = " server "  Width = " 64px " ></ asp:TextBox >
                
< asp:Label id = " Label1 "  style = " Z-INDEX: 110; LEFT: 520px; POSITION: absolute; TOP: 399px "  runat = " server " > 值: </ asp:Label >
                
< asp:TextBox id = " tbResult "  style = " Z-INDEX: 113; LEFT: 585px; POSITION: absolute; TOP: 394px "  runat = " server "  Width = " 145px " ></ asp:TextBox >
                
< asp:Label id = " Label4 "  style = " Z-INDEX: 114; LEFT: 209px; POSITION: absolute; TOP: 344px "  runat = " server " > 表: </ asp:Label >
                
< asp:DropDownList id = " ddlTable "  style = " Z-INDEX: 115; LEFT: 277px; POSITION: absolute; TOP: 341px "  runat = " server " >
                    
< asp:ListItem Value = " 0 " > 表一 </ asp:ListItem >
                    
< asp:ListItem Value = " 1 " > 表二 </ asp:ListItem >
                
</ asp:DropDownList >
                
< asp:Button id = " Button2 "  style = " Z-INDEX: 116; LEFT: 35px; POSITION: absolute; TOP: 389px "  runat = " server "  Height = " 36px "  Width = " 131px "  Text = " 求值 " ></ asp:Button ></ FONT ></ form >
    
</ body >
</ HTML >

 

 

aspx.cs

 

 

ExpandedBlockStart.gif 代码
using  System;
using  System.Collections;
using  System.ComponentModel;
using  System.Data;
using  System.Drawing;
using  System.Web;
using  System.Web.SessionState;
using  System.Web.UI;
using  System.Web.UI.WebControls;
using  System.Web.UI.HtmlControls;

namespace  DsAndXML
{
    
///   <summary>
    
///  CodeUse 的摘要说明。
    
///   </summary>
     public   class  CodeUse : System.Web.UI.Page
    {
        
protected  System.Web.UI.WebControls.Button btnAddColumn;
        
protected  System.Web.UI.WebControls.Button btnAddRow;
        
protected  System.Web.UI.WebControls.DataGrid dgMaster;
        
protected  System.Web.UI.WebControls.DataGrid dgChild;
        
protected  System.Web.UI.WebControls.Button Button1;
        
protected  System.Web.UI.WebControls.Button btnAddForeign;
        
protected  System.Web.UI.WebControls.Button btnUpdateMID;
        
protected  System.Web.UI.WebControls.TextBox tbRow;
        
protected  System.Web.UI.WebControls.TextBox tbCol;
        
protected  System.Web.UI.WebControls.Label Label1;
        
protected  System.Web.UI.WebControls.Label Label2;
        
protected  System.Web.UI.WebControls.Label Label3;
        
protected  System.Web.UI.WebControls.TextBox tbResult;
        
protected  System.Web.UI.WebControls.Label Label4;
        
protected  System.Web.UI.WebControls.DropDownList ddlTable;
        
protected  System.Web.UI.WebControls.Button Button2;
        
protected  System.Web.UI.WebControls.Button btnUpdateDs;
        
protected  System.Web.UI.WebControls.Button btnCreate;
    
        
private   void  Page_Load( object  sender, System.EventArgs e)
        {
            
//  在此处放置用户代码以初始化页面
        }

        
#region  Web Form Designer generated code
        
override   protected   void  OnInit(EventArgs e)
        {
            
//
            
//  CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
            
//
            InitializeComponent();
            
base .OnInit(e);
        }
        
        
///   <summary>
        
///  设计器支持所需的方法 - 不要使用代码编辑器修改
        
///  此方法的内容。
        
///   </summary>
         private   void  InitializeComponent()
        {    
            
this .btnCreate.Click  +=   new  System.EventHandler( this .btnCreate_Click);
            
this .btnAddRow.Click  +=   new  System.EventHandler( this .btnAddRow_Click);
            
this .btnAddColumn.Click  +=   new  System.EventHandler( this .btnAddColumn_Click);
            
this .Button1.Click  +=   new  System.EventHandler( this .Button1_Click);
            
this .btnAddForeign.Click  +=   new  System.EventHandler( this .btnAddForeign_Click);
            
this .btnUpdateMID.Click  +=   new  System.EventHandler( this .btnUpdateMID_Click);
            
this .Button2.Click  +=   new  System.EventHandler( this .Button2_Click);
            
this .btnUpdateDs.Click  +=   new  System.EventHandler( this .btnUpdateDs_Click);
            
this .Load  +=   new  System.EventHandler( this .Page_Load);

        }
        
#endregion

        
private   void  btnCreate_Click( object  sender, System.EventArgs e)
        {
            DataSet dsUntyped 
=   new  DataSet( " myDS " ); // 创建数据集
            DataTable dtMaster  =   new  DataTable( " Master " ); // 创建数据表
            DataTable dtChild  =   new  DataTable( " Child " );
            dsUntyped.Tables.Add(dtMaster);
// 把数据表添加到数据集中
            dsUntyped.Tables.Add(dtChild);
            Session[
" ds " =  dsUntyped;
            
        }

        
private   void  btnAddColumn_Click( object  sender, System.EventArgs e)
        {
            DataSet dsUntyped 
=  (DataSet)Session[ " ds " ];
            dsUntyped.Tables[
" Master " ].Columns.Add( " MasterID " , typeof ( int ));
            dsUntyped.Tables[
" Master " ].Columns.Add( " MasterValue " , typeof ( string ));
            dsUntyped.Tables[
" Child " ].Columns.Add( " MasterLink " , typeof ( int ));
            dsUntyped.Tables[
" Child " ].Columns.Add( " ChildID " , typeof ( int ));
            dsUntyped.Tables[
" Child " ].Columns .Add( " ChildValue " , typeof ( string ));
            
// 修改表头
            dsUntyped.Tables[ " Master " ].Columns[ " MasterID " ].Caption  =   " 主ID " ;
            dsUntyped.Tables[
" Master " ].Columns[ " MasterValue " ].Caption  =   " " ;
            Session[
" ds " =  dsUntyped;
            Bind();
        }

        
private   void  btnAddRow_Click( object  sender, System.EventArgs e)
        {
            
try
            {
                DataSet dsUntyped 
=  (DataSet)Session[ " ds " ];
                
// 为Master表添加两行
                DataRow dr  =  dsUntyped.Tables[ " Master " ].NewRow();
                dr[
" MasterID " =   1 ;
                dr[
" MasterValue " =   " One " ;
                dsUntyped.Tables[
" Master " ].Rows.Add(dr);
                dr 
=  dsUntyped.Tables[ " Master " ].NewRow();
                dr[
" MasterID " =   2 ;
                dr[
" MasterValue " =   " Two " ;
                dsUntyped.Tables[
" Master " ].Rows.Add(dr);
                
// 为child表添加1行
                dr  =  dsUntyped.Tables[ " Child " ].NewRow();
                dr[
" MasterLink " =   1 ;
                dr[
" ChildID " =   1 ;
                dr[
" ChildValue " =   " ChildOne " ;
                dsUntyped.Tables[
" Child " ].Rows.Add(dr);
                Session[
" ds " =  dsUntyped;
                Bind();
            }
            
catch (Exception ee)
            {
                Response.Write(ee.Message);
            }
        
        }
        
// 添加唯一键
         private   void  Button1_Click( object  sender, System.EventArgs e)
        {
            DataSet dsUntyped 
=  (DataSet)Session[ " ds " ];
            System.Data.UniqueConstraint uc 
=   new  UniqueConstraint( " unqi " ,dsUntyped.Tables[ " Master " ].Columns[ " MasterID " ]);
            dsUntyped.Tables[
" Master " ].Constraints.Add(uc);
            Session[
" ds " =  dsUntyped;
        }
        
private   void  Bind()
        {
            DataSet dsUntyped 
=  (DataSet)Session[ " ds " ];
            dgMaster.DataSource 
=  dsUntyped.Tables[ " Master " ].DefaultView;
            dgChild.DataSource 
=  dsUntyped.Tables[ " Child " ].DefaultView;
            
this .DataBind();
        }

        
private   void  btnAddForeign_Click( object  sender, System.EventArgs e)
        {
            DataSet dsUntyped 
=  (DataSet)Session[ " ds " ];
            System.Data.ForeignKeyConstraint fc 
=   new  ForeignKeyConstraint( " fc " ,dsUntyped.Tables[ " Master " ].Columns[ " MasterID " ],dsUntyped.Tables[ " Child " ].Columns[ " MasterLink " ]);
            dsUntyped.Tables[
" Child " ].Constraints.Add(fc);
            Session[
" ds " =  dsUntyped;

        }

        
private   void  btnUpdateMID_Click( object  sender, System.EventArgs e)
        {
            DataSet dsUntyped 
=  (DataSet)Session[ " ds " ];
            dsUntyped.Tables[
" Master " ].Rows[ 0 ][ " MasterID " =   4 ;
            Bind();
        }

        
private   void  Button2_Click( object  sender, System.EventArgs e)
        {
            DataSet dsUntyped 
=  (DataSet)Session[ " ds " ];
            
int  nIndexTb  =   int .Parse(ddlTable.SelectedItem.Value);
            
int  nIndexRow  =   int .Parse(tbRow.Text);
            
int  nIndexCol  =   int .Parse(tbCol.Text);
            
object  obj  =  dsUntyped.Tables[nIndexTb].Rows[nIndexRow][nIndexCol];
            tbResult.Text 
=  obj.ToString();
            
        }

        
private   void  btnUpdateDs_Click( object  sender, System.EventArgs e)
        {
            DataSet dsUntyped 
=  (DataSet)Session[ " ds " ];
            
int  nIndexTb  =   int .Parse(ddlTable.SelectedItem.Value);
            
int  nIndexRow  =   int .Parse(tbRow.Text);
            
int  nIndexCol  =   int .Parse(tbCol.Text);
            dsUntyped.Tables[nIndexTb].Rows[nIndexRow][nIndexCol] 
=  tbResult.Text;
            Session[
" ds " =  dsUntyped;
            Bind();
        }
    }
}

 

 

转载于:https://www.cnblogs.com/spark_wu/archive/2009/12/14/1624098.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值