DataSet Třída

Definice

Představuje mezipaměť dat v paměti.

public ref class DataSet : System::ComponentModel::MarshalByValueComponent, System::ComponentModel::IListSource, System::ComponentModel::ISupportInitialize, System::ComponentModel::ISupportInitializeNotification, System::Runtime::Serialization::ISerializable, System::Xml::Serialization::IXmlSerializable
public ref class DataSet : System::ComponentModel::MarshalByValueComponent, System::ComponentModel::IListSource, System::ComponentModel::ISupportInitialize, System::Runtime::Serialization::ISerializable, System::Xml::Serialization::IXmlSerializable
public ref class DataSet : System::ComponentModel::MarshalByValueComponent, System::ComponentModel::IListSource, System::ComponentModel::ISupportInitializeNotification, System::Runtime::Serialization::ISerializable, System::Xml::Serialization::IXmlSerializable
public class DataSet : System.ComponentModel.MarshalByValueComponent, System.ComponentModel.IListSource, System.ComponentModel.ISupportInitialize, System.ComponentModel.ISupportInitializeNotification, System.Runtime.Serialization.ISerializable, System.Xml.Serialization.IXmlSerializable
[System.Serializable]
public class DataSet : System.ComponentModel.MarshalByValueComponent, System.ComponentModel.IListSource, System.ComponentModel.ISupportInitialize, System.Runtime.Serialization.ISerializable, System.Xml.Serialization.IXmlSerializable
[System.Serializable]
public class DataSet : System.ComponentModel.MarshalByValueComponent, System.ComponentModel.IListSource, System.ComponentModel.ISupportInitializeNotification, System.Runtime.Serialization.ISerializable, System.Xml.Serialization.IXmlSerializable
public class DataSet : System.ComponentModel.MarshalByValueComponent, System.ComponentModel.IListSource, System.ComponentModel.ISupportInitializeNotification, System.Runtime.Serialization.ISerializable, System.Xml.Serialization.IXmlSerializable
type DataSet = class
    inherit MarshalByValueComponent
    interface IListSource
    interface ISupportInitialize
    interface ISupportInitializeNotification
    interface ISerializable
    interface IXmlSerializable
[<System.Serializable>]
type DataSet = class
    inherit MarshalByValueComponent
    interface IListSource
    interface IXmlSerializable
    interface ISupportInitialize
    interface ISerializable
[<System.Serializable>]
type DataSet = class
    inherit MarshalByValueComponent
    interface IListSource
    interface IXmlSerializable
    interface ISupportInitializeNotification
    interface ISupportInitialize
    interface ISerializable
Public Class DataSet
Inherits MarshalByValueComponent
Implements IListSource, ISerializable, ISupportInitialize, ISupportInitializeNotification, IXmlSerializable
Public Class DataSet
Inherits MarshalByValueComponent
Implements IListSource, ISerializable, ISupportInitialize, IXmlSerializable
Public Class DataSet
Inherits MarshalByValueComponent
Implements IListSource, ISerializable, ISupportInitializeNotification, IXmlSerializable
Dědičnost
Atributy
Implementuje

Příklady

Následující příklad se skládá z několika metod, které zkombinují, vytvoří a vyplní z DataSet databáze Northwind .

using System;
using System.Data;
using System.Data.SqlClient;

namespace Microsoft.AdoNet.DataSetDemo
{
    class NorthwindDataSet
    {
        static void Main()
        {
            string connectionString = GetConnectionString();
            ConnectToData(connectionString);
        }

        private static void ConnectToData(string connectionString)
        {
            //Create a SqlConnection to the Northwind database.
            using (SqlConnection connection =
                       new SqlConnection(connectionString))
            {
                //Create a SqlDataAdapter for the Suppliers table.
                SqlDataAdapter adapter = new SqlDataAdapter();

                // A table mapping names the DataTable.
                adapter.TableMappings.Add("Table", "Suppliers");

                // Open the connection.
                connection.Open();
                Console.WriteLine("The SqlConnection is open.");

                // Create a SqlCommand to retrieve Suppliers data.
                SqlCommand command = new SqlCommand(
                    "SELECT SupplierID, CompanyName FROM dbo.Suppliers;",
                    connection);
                command.CommandType = CommandType.Text;

                // Set the SqlDataAdapter's SelectCommand.
                adapter.SelectCommand = command;

                // Fill the DataSet.
                DataSet dataSet = new DataSet("Suppliers");
                adapter.Fill(dataSet);

                // Create a second Adapter and Command to get
                // the Products table, a child table of Suppliers.
                SqlDataAdapter productsAdapter = new SqlDataAdapter();
                productsAdapter.TableMappings.Add("Table", "Products");

                SqlCommand productsCommand = new SqlCommand(
                    "SELECT ProductID, SupplierID FROM dbo.Products;",
                    connection);
                productsAdapter.SelectCommand = productsCommand;

                // Fill the DataSet.
                productsAdapter.Fill(dataSet);

                // Close the connection.
                connection.Close();
                Console.WriteLine("The SqlConnection is closed.");

                // Create a DataRelation to link the two tables
                // based on the SupplierID.
                DataColumn parentColumn =
                    dataSet.Tables["Suppliers"].Columns["SupplierID"];
                DataColumn childColumn =
                    dataSet.Tables["Products"].Columns["SupplierID"];
                DataRelation relation =
                    new System.Data.DataRelation("SuppliersProducts",
                    parentColumn, childColumn);
                dataSet.Relations.Add(relation);
                Console.WriteLine(
                    "The {0} DataRelation has been created.",
                    relation.RelationName);
            }
        }

        static private string GetConnectionString()
        {
            // To avoid storing the connection string in your code,
            // you can retrieve it from a configuration file.
            return "Data Source=(local);Initial Catalog=Northwind;"
                + "Integrated Security=SSPI";
        }
    }
}
Option Explicit On
Option Strict On

Imports System.Data
Imports system.Data.SqlClient

Public Class NorthwindDataSet

    Public Shared Sub Main()
        Dim connectionString As String = _
            GetConnectionString()
        ConnectToData(connectionString)
    End Sub

    Private Shared Sub ConnectToData( _
        ByVal connectionString As String)

        ' Create a SqlConnection to the Northwind database.
        Using connection As SqlConnection = New SqlConnection( _
           connectionString)

            ' Create a SqlDataAdapter for the Suppliers table.
            Dim suppliersAdapter As SqlDataAdapter = _
               New SqlDataAdapter()

            ' A table mapping names the DataTable.
            suppliersAdapter.TableMappings.Add("Table", "Suppliers")

            ' Open the connection.
            connection.Open()
            Console.WriteLine("The SqlConnection is open.")

            ' Create a SqlCommand to retrieve Suppliers data.
            Dim suppliersCommand As New SqlCommand( _
               "SELECT SupplierID, CompanyName FROM dbo.Suppliers;", _
               connection)
            suppliersCommand.CommandType = CommandType.Text

            ' Set the SqlDataAdapter's SelectCommand.
            suppliersAdapter.SelectCommand = suppliersCommand

            ' Fill the DataSet.
            Dim dataSet As New DataSet("Suppliers")
            suppliersAdapter.Fill(dataSet)

            ' Create a second SqlDataAdapter and SqlCommand to get
            ' the Products table, a child table of Suppliers. 
            Dim productsAdapter As New SqlDataAdapter()
            productsAdapter.TableMappings.Add("Table", "Products")

            Dim productsCommand As New SqlCommand( _
               "SELECT ProductID, SupplierID FROM dbo.Products;", _
               connection)
            productsAdapter.SelectCommand = productsCommand

            ' Fill the DataSet.
            productsAdapter.Fill(dataSet)

            ' Close the connection.
            connection.Close()
            Console.WriteLine("The SqlConnection is closed.")

            ' Create a DataRelation to link the two tables
            ' based on the SupplierID.
            Dim parentColumn As DataColumn = _
               dataSet.Tables("Suppliers").Columns("SupplierID")
            Dim childColumn As DataColumn = _
               dataSet.Tables("Products").Columns("SupplierID")
            Dim relation As New DataRelation("SuppliersProducts", _
               parentColumn, childColumn)
            dataSet.Relations.Add(relation)

            Console.WriteLine( _
               "The {0} DataRelation has been created.", _
               relation.RelationName)
        End Using

    End Sub

    Private Shared Function GetConnectionString() As String
        ' To avoid storing the connection string in your code,  
        ' you can retrieve it from a configuration file.
        Return "Data Source=(local);Initial Catalog=Northwind;" _
           & "Integrated Security=SSPI;"
    End Function
End Class

Poznámky

Další informace o tomto rozhraní API najdete v tématu Doplňkové poznámky k rozhraní API pro DataSet.

Konstruktory

DataSet()

Inicializuje novou instanci DataSet třídy .

DataSet(SerializationInfo, StreamingContext)
Zastaralé.

Inicializuje novou instanci třídy DataSet se serializovanými daty.

DataSet(SerializationInfo, StreamingContext, Boolean)
Zastaralé.

Inicializuje novou instanci třídy DataSet se serializovanými daty.

DataSet(String)

Inicializuje novou instanci DataSet třídy s daným názvem.

Vlastnosti

CaseSensitive

Získá nebo nastaví hodnotu označující, zda porovnání řetězců v rámci DataTable objektů jsou rozlišovat malá a velká písmena.

Container

Získá kontejner pro komponentu.

(Zděděno od MarshalByValueComponent)
DataSetName

Získá nebo nastaví název aktuálního DataSetobjektu .

DefaultViewManager

Získá vlastní zobrazení dat obsažených v objektu DataSet pro povolení filtrování, vyhledávání a navigace pomocí vlastního DataViewManagerobjektu .

DesignMode

Získá hodnotu označující, zda je komponenta aktuálně v režimu návrhu.

(Zděděno od MarshalByValueComponent)
EnforceConstraints

Získá nebo nastaví hodnotu označující, zda jsou při pokusu o jakoukoli operaci aktualizace dodrženy pravidla omezení.

Events

Získá seznam obslužných rutin událostí, které jsou připojeny k této komponentě.

(Zděděno od MarshalByValueComponent)
ExtendedProperties

Získá kolekci přizpůsobených uživatelských informací přidružených k DataSet.

HasErrors

Získá hodnotu označující, zda existují chyby v některém z objektů v rámci tohoto DataSetobjektu DataTable .

IsInitialized

Získá hodnotu, která označuje, zda DataSet je inicializován.

Locale

Získá nebo nastaví informace o národním prostředí používané k porovnání řetězců v tabulce.

Namespace

Získá nebo nastaví obor názvů objektu DataSet.

Prefix

Získá nebo nastaví předponu XML, která aliasuje obor názvů DataSet.

Relations

Získá kolekci relací, které propojující tabulky a umožňují navigaci z nadřazených tabulek do podřízených tabulek.

RemotingFormat

Získá nebo nastaví formát serializace pro DataSet , který se používá při vzdálené komunikace.

SchemaSerializationMode

Získá nebo nastaví SchemaSerializationMode pro DataSet.

Site

Získá nebo nastaví pro ISiteDataSet.

Tables

Získá kolekci tabulek obsažených DataSetv souboru .

Metody

AcceptChanges()

Potvrdí všechny změny provedené DataSet od jeho načtení nebo od posledního AcceptChanges() zavolání.

BeginInit()

Začíná inicializace DataSet , která je použita ve formuláři nebo používána jinou komponentou. K inicializaci dochází v době běhu.

Clear()

Vymaže DataSet všechna data odebráním všech řádků ve všech tabulkách.

Clone()

Zkopíruje strukturu objektu DataSet, včetně všech DataTable schémat, relací a omezení. Nekopíruje žádná data.

Copy()

Zkopíruje strukturu i data pro tento DataSetobjekt .

CreateDataReader()

Vrátí hodnotu DataTableReader s jednou sadou výsledků pro každou DataTablehodnotu ve stejném pořadí, v jakém se tabulky zobrazují v kolekci Tables .

CreateDataReader(DataTable[])

Vrátí hodnotu DataTableReader s jednou sadou výsledků pro každou DataTable.

DetermineSchemaSerializationMode(SerializationInfo, StreamingContext)

Určuje pro SchemaSerializationModeDataSet.

DetermineSchemaSerializationMode(XmlReader)

Určuje pro SchemaSerializationModeDataSet.

Dispose()

Uvolní všechny prostředky používané nástrojem MarshalByValueComponent.

(Zděděno od MarshalByValueComponent)
Dispose(Boolean)

Uvolní nespravované prostředky používané nástrojem MarshalByValueComponent a volitelně uvolní spravované prostředky.

(Zděděno od MarshalByValueComponent)
EndInit()

Ukončí inicializaci DataSet prvku, který je použit ve formuláři nebo používán jinou komponentou. K inicializaci dochází v době běhu.

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetChanges()

Získá kopii DataSet , která obsahuje všechny změny provedené v něm od jeho načtení nebo od posledního AcceptChanges() zavolání.

GetChanges(DataRowState)

Získá kopii DataSet obsahující všechny změny provedené v něm od posledního načtení nebo od AcceptChanges() jeho zavolání, filtrované podle DataRowState.

GetDataSetSchema(XmlSchemaSet)

Získá kopii XmlSchemaSet pro DataSet.

GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetObjectData(SerializationInfo, StreamingContext)
Zastaralé.

Naplní objekt serializace informací dat potřebnými k serializaci objektu DataSet.

GetSchemaSerializable()

Vrátí serializovatelnou XmlSchema instanci.

GetSerializationData(SerializationInfo, StreamingContext)

Deserializuje data tabulky z binárního nebo XML streamu.

GetService(Type)

Získá implementátor objektu IServiceProvider.

(Zděděno od MarshalByValueComponent)
GetType()

Získá aktuální Type instanci.

(Zděděno od Object)
GetXml()

Vrátí reprezentaci XML dat uložených v objektu DataSet.

GetXmlSchema()

Vrátí schéma XML pro reprezentaci XML dat uložených v objektu DataSet.

HasChanges()

Získá hodnotu označující, zda DataSet obsahuje změny, včetně nových, odstraněných nebo změněných řádků.

HasChanges(DataRowState)

Získá hodnotu označující, zda DataSet obsahuje změny, včetně nových, odstraněných nebo změněných řádků, filtrované podle DataRowState.

InferXmlSchema(Stream, String[])

Použije schéma XML ze zadaného StreamDataSetna .

InferXmlSchema(String, String[])

Použije schéma XML ze zadaného souboru na DataSet.

InferXmlSchema(TextReader, String[])

Použije schéma XML ze zadaného TextReaderDataSetna .

InferXmlSchema(XmlReader, String[])

Použije schéma XML ze zadaného XmlReaderDataSetna .

InitializeDerivedDataSet()

Deserializovat všechna data tabulek datové sady z binárního nebo XML streamu.

IsBinarySerialized(SerializationInfo, StreamingContext)

Kontroluje formát serializované reprezentace DataSet.

Load(IDataReader, LoadOption, DataTable[])

DataSet Vyplní hodnoty ze zdroje dat pomocí zadaného IDataReaderobjektu pomocí pole DataTable instancí pro poskytnutí informací o schématu a oboru názvů.

Load(IDataReader, LoadOption, FillErrorEventHandler, DataTable[])

DataSet Vyplní hodnoty ze zdroje dat pomocí zadaného IDataReaderobjektu pomocí pole DataTable instancí pro poskytnutí informací o schématu a oboru názvů.

Load(IDataReader, LoadOption, String[])

DataSet Vyplní hodnotu hodnotami ze zdroje dat pomocí zadaného IDataReaderpole řetězců k zadání názvů tabulek v rámci DataSet.

MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
Merge(DataRow[])

Sloučí pole DataRow objektů do aktuálního DataSetobjektu .

Merge(DataRow[], Boolean, MissingSchemaAction)

Sloučí pole DataRow objektů do aktuálního DataSet, zachová nebo zahodí změny v objektu DataSet a zpracovává nekompatibilní schéma podle zadaných argumentů.

Merge(DataSet)

Sloučí zadaný DataSet a jeho schéma do aktuálního DataSet.

Merge(DataSet, Boolean)

Sloučí zadané DataSet schéma a jeho schéma do aktuálního DataSet, zachová nebo zahodí všechny změny v tomto DataSet objektu podle daného argumentu.

Merge(DataSet, Boolean, MissingSchemaAction)

Sloučí zadané DataSet schéma a jeho schéma s aktuálním DataSet, zachová nebo zahodí změny aktuálního DataSet a zpracovává nekompatibilní schéma podle zadaných argumentů.

Merge(DataTable)

Sloučí zadaný DataTable a jeho schéma do aktuálního DataSet.

Merge(DataTable, Boolean, MissingSchemaAction)

Sloučí zadané DataTable schéma a jeho schéma do aktuálního DataSet, zachová nebo zahodí změny v objektu DataSet a zpracovává nekompatibilní schéma podle zadaných argumentů.

OnPropertyChanging(PropertyChangedEventArgs)

OnPropertyChanging(PropertyChangedEventArgs) Vyvolá událost.

OnRemoveRelation(DataRelation)

Vyvolá se při DataRelation odebrání objektu z objektu DataTable.

OnRemoveTable(DataTable)

Vyvolá se DataTable při odebrání z objektu DataSet.

RaisePropertyChanging(String)

Odešle oznámení, že se zadaná DataSet vlastnost změní.

ReadXml(Stream)

Načte schéma XML a data do objektu DataSet pomocí zadaného Streamobjektu .

ReadXml(Stream, XmlReadMode)

Načte schéma a data XML do objektu DataSet pomocí zadaných Stream a XmlReadMode.

ReadXml(String)

Pomocí zadaného souboru načte schéma a data DataSet XML.

ReadXml(String, XmlReadMode)

Načte schéma a data XML do objektu DataSet pomocí zadaného souboru a XmlReadMode.

ReadXml(TextReader)

Načte schéma XML a data do objektu DataSet pomocí zadaného TextReaderobjektu .

ReadXml(TextReader, XmlReadMode)

Načte schéma a data XML do objektu DataSet pomocí zadaných TextReader a XmlReadMode.

ReadXml(XmlReader)

Načte schéma XML a data do objektu DataSet pomocí zadaného XmlReaderobjektu .

ReadXml(XmlReader, XmlReadMode)

Načte schéma a data XML do objektu DataSet pomocí zadaných XmlReader a XmlReadMode.

ReadXmlSchema(Stream)

Načte schéma XML ze zadaného Stream schématu do .DataSet

ReadXmlSchema(String)

Načte schéma XML ze zadaného souboru do .DataSet

ReadXmlSchema(TextReader)

Načte schéma XML ze zadaného TextReader schématu do .DataSet

ReadXmlSchema(XmlReader)

Načte schéma XML ze zadaného XmlReader schématu do .DataSet

ReadXmlSerializable(XmlReader)

Ignoruje atributy a vrátí prázdnou datovou sadu.

RejectChanges()

Vrátí zpět všechny změny provedené v objektu DataSet od jeho vytvoření nebo od posledního AcceptChanges() zavolání.

Reset()

Vymaže všechny tabulky a odebere všechny relace, cizí omezení a tabulky z objektu DataSet. Podtřídy by se měly přepsat Reset() , aby se obnovil DataSet původní stav.

ShouldSerializeRelations()

Získá hodnotu označující, zda Relations vlastnost by měla být zachována.

ShouldSerializeTables()

Získá hodnotu označující, zda Tables vlastnost by měla být zachována.

ToString()

String Vrátí hodnotu obsahující název , Componentpokud existuje. Tato metoda by neměla být přepsána.

(Zděděno od MarshalByValueComponent)
WriteXml(Stream)

Zapíše aktuální data pro zadanou DataSetStreamhodnotu .

WriteXml(Stream, XmlWriteMode)

Zapíše aktuální data a volitelně i schéma pro DataSet zadaná Stream a XmlWriteMode. Pokud chcete zapsat schéma, nastavte hodnotu parametru mode na WriteSchemahodnotu .

WriteXml(String)

Zapíše aktuální data pro soubor DataSet do zadaného souboru.

WriteXml(String, XmlWriteMode)

Zapíše aktuální data a volitelně schéma pro DataSet do zadaného souboru pomocí zadaného XmlWriteModesouboru . Pokud chcete zapsat schéma, nastavte hodnotu parametru mode na WriteSchemahodnotu .

WriteXml(TextWriter)

Zapíše aktuální data pro zadanou DataSetTextWriterhodnotu .

WriteXml(TextWriter, XmlWriteMode)

Zapíše aktuální data a volitelně i schéma pro DataSet zadaná TextWriter a XmlWriteMode. Pokud chcete zapsat schéma, nastavte hodnotu parametru mode na WriteSchemahodnotu .

WriteXml(XmlWriter)

Zapíše aktuální data pro parametr DataSet do zadaného XmlWriter.

WriteXml(XmlWriter, XmlWriteMode)

Zapíše aktuální data a volitelně i schéma pro DataSet zadaná XmlWriter a XmlWriteMode. Pokud chcete zapsat schéma, nastavte hodnotu parametru mode na WriteSchemahodnotu .

WriteXmlSchema(Stream)

Zapíše DataSet strukturu jako schéma XML do zadaného Stream objektu.

WriteXmlSchema(Stream, Converter<Type,String>)

Zapíše DataSet strukturu jako schéma XML do zadaného Stream objektu.

WriteXmlSchema(String)

Zapíše DataSet strukturu jako schéma XML do souboru.

WriteXmlSchema(String, Converter<Type,String>)

Zapíše DataSet strukturu jako schéma XML do souboru.

WriteXmlSchema(TextWriter)

Zapíše DataSet strukturu jako schéma XML do zadaného TextWriter objektu.

WriteXmlSchema(TextWriter, Converter<Type,String>)

Zapíše DataSet strukturu jako schéma XML do zadaného TextWriterobjektu .

WriteXmlSchema(XmlWriter)

Zapíše DataSet strukturu jako schéma XML do objektu XmlWriter .

WriteXmlSchema(XmlWriter, Converter<Type,String>)

Zapíše DataSet strukturu jako schéma XML do zadaného XmlWriterobjektu .

Událost

Disposed

Přidá obslužnou rutinu události pro naslouchání Disposed události komponenty.

(Zděděno od MarshalByValueComponent)
Initialized

Vyvolá se po DataSet inicializaci.

MergeFailed

Nastane, když cíl a zdroj DataRow mají stejnou hodnotu primárního klíče a EnforceConstraints je nastavena na true.

Explicitní implementace rozhraní

IListSource.ContainsListCollection

Popis tohoto člena najdete v tématu ContainsListCollection.

IListSource.GetList()

Popis tohoto člena najdete v tématu GetList().

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Naplní objekt serializace informací dat potřebnými k serializaci objektu DataSet.

IXmlSerializable.GetSchema()

Popis tohoto člena najdete v tématu GetSchema().

IXmlSerializable.ReadXml(XmlReader)

Popis tohoto člena najdete v tématu ReadXml(XmlReader).

IXmlSerializable.WriteXml(XmlWriter)

Popis tohoto člena najdete v tématu WriteXml(XmlWriter).

Platí pro

Bezpečný přístup z více vláken

Tento typ je bezpečný pro operace čtení ve více vláknech. Je nutné synchronizovat všechny operace zápisu.

Viz také