ADO.Net DataSet类

ADO.Net的DataSet类包含数据的数据表集合。它用于在不与数据源交互的情况下获取数据,这就是为什么它也被称为断开数据访问方法。这是一个内存数据存储,可以同时容纳多个表。可以使用DataRelation对象来关联这些表。 DataSet也可以用来读写XML文档中的数据。

ADO.NET提供了一个可用于创建DataSet对象的DataSet类。它包含执行数据相关操作的构造函数和方法。

DataSet类的签名

public class DataSet : System.ComponentModel.MarshalByValueComponent, System.ComponentModel.IListSource,   
System.ComponentModel.ISupportInitializeNotification, System.Runtime.Serialization.ISerializable,   
System.Xml.Serialization.IXmlSerializable

DataSet类构造函数

编号 构造函数 描述
1 DataSet() 它用于初始化DataSet类的新实例。
2 DataSet(String) 它用于使用给定名称初始化DataSet类的新实例。
3 DataSet(SerializationInfo, StreamingContext) 它用于初始化具有给定序列化信息和上下文的DataSet类的新实例。
4 DataSet(SerializationInfo, StreamingContext, Boolean) 它用于初始化DataSet类的新实例。

DataSet类的属性

编号 属性 描述
1 CaseSensitive 它用于检查DataTable对象是否区分大小写。
2 DataSetName 它用于获取或设置当前DataSet的名称。
3 DefaultViewManager 它用于获取DataSet中包含的数据的自定义视图,以允许过滤和搜索。
4 HasErrors 它用于检查此DataSet中的任何DataTable对象中是否有错误。
5 IsInitialized 它用于检查DataSet是否被初始化。
6 Locale 它用于获取或设置用于比较表中字符串的语言环境信息。
7 Namespace 它用于获取或设置DataSet的名称空间。
8 Site 它用于获取或设置DataSetISite
9 Tables 它用于获取DataSet中包含的表的集合。

DataSet类的方法

下表中列出了一些常用的DataSet类中的方法。

编号 方法 描述
1 BeginInit() 它用于在窗体上使用的DataSet的初始化。
2 Clear() 它用于通过删除所有表中的所有行来清除任何DataSet中的数据。
3 Clone() 它用于复制DataSet的结构。
4 Copy() 它用于复制此DataSet的结构和数据。
5 CreateDataReader(DataTable[]) 它将为每个DataTable返回一个带有一个结果集的DataTableReader
6 CreateDataReader() 它将为每个DataTable返回一个带有一个结果集的DataTableReader
7 EndInit() 它结束在窗体上使用的DataSet的初始化。
8 GetXml() 它返回存储在DataSet中的数据的XML表示形式。
9 GetXmlSchema() 它返回存储在DataSet中的数据的XML表示的XML Schema。
10 Load(IDataReader, LoadOption, DataTable[]) 它用于使用提供的IDataReader从数据源填充数据集。
11 Merge(DataSet) 它用于将指定的DataSet及其模式合并到当前的DataSet中。
12 Merge(DataTable) 它用于将指定的DataTable及其模式合并到当前的DataSet中。
13 ReadXml(XmlReader, XmlReadMode) 它用于使用指定的XmlReaderXmlReadMode将XML模式和数据读入DataSet
14 Reset() 它用于清除所有表,并从DataSet中删除所有关系,外部约束和表。
15 WriteXml(XmlWriter, XmlWriteMode) 它用于使用指定的XmlWriterXmlWriteMode编写DataSet的当前数据和可选的模式。

示例

在这个例子中,将演示如何使用DataSet并将数据显示到一个gridview中。 创建一个Web窗体并从工具箱中将GridView拖到窗体上。可以在数据类别 中找到GridView

首先创建一个Web项目:AdoNetDataSet,打开Visual Studio创建一个ASP.NET空网站项目,如下所示 -

向这个项目中添加一个新建项,在项目名称上点击右键,在弹出的菜单中选择:添加新项,文件的名称为:Default.aspx,如下图所示 -

从工具箱中将GridView拖到窗体上,如下图所示 -

下面是Default.aspx的代码实现 -

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

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title>AdoNet DataSet示例</title>
</head>
<body>
    <form id="form1" runat="server">
        <div>

        </div>
        <asp:GridView ID="GridView1" runat="server" CellPadding="4" ForeColor="#333333" GridLines="None">  
            <AlternatingRowStyle BackColor="White" />  
            <EditRowStyle BackColor="#2461BF" />  
            <FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />  
            <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />  
            <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />  
            <RowStyle BackColor="#EFF3FB" />  
            <SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />  
            <SortedAscendingCellStyle BackColor="#F5F7FB" />  
            <SortedAscendingHeaderStyle BackColor="#6D95E1" />  
            <SortedDescendingCellStyle BackColor="#E9EBEF" />  
            <SortedDescendingHeaderStyle BackColor="#4870BE" />  
        </asp:GridView>  
    </form>
</body>
</html>

下面是Defatult.aspx.cs 代码的实现 -

using System;
using System.Data.SqlClient;
using System.Data;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {        
        using (SqlConnection con = new SqlConnection("data source=.; database=student; integrated security=SSPI"))
        {
            SqlDataAdapter sde = new SqlDataAdapter("Select * from student_info", con);
            DataSet ds = new DataSet();
            sde.Fill(ds);
            GridView1.DataSource = ds;
            GridView1.DataBind();
        }

    }
}

执行上面项目,点击菜单:调试 -> 开始执行(不调试) ,Visual Studio自动打开浏览器,看到结果如下所示 -


上一篇:ADO.Net SqlDataReader类

下一篇:ADO.Net DataAdapter类

关注微信小程序
程序员编程王-随时随地学编程

扫描二维码
程序员编程王

扫一扫关注最新编程教程