DataSet Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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 určující, zda porovnání řetězců v objektech DataTable jsou rozlišovat malá a malá písmena. |
Container |
Získá kontejner pro komponentu. (Zděděno od MarshalByValueComponent) |
DataSetName |
Získá nebo nastaví název aktuálního DataSet. |
DefaultViewManager |
Získá vlastní zobrazení dat obsažených v objektu DataSet pro povolení filtrování, vyhledávání a navigace pomocí vlastní DataViewManager. |
DesignMode |
Získá hodnotu označující, zda komponenta je aktuálně v režimu návrhu. (Zděděno od MarshalByValueComponent) |
EnforceConstraints |
Získá nebo nastaví hodnotu urč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 |
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žité k porovnání řetězců v tabulce. |
Namespace |
Získá nebo nastaví obor názvů .DataSet |
Prefix |
Získá nebo nastaví předponu XML, která aliasuje obor názvů objektu DataSet. |
Relations |
Získá kolekci relací, které propojuje tabulky a umožňuje 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 | |
Tables |
Získá kolekci tabulek obsažených DataSetv souboru . |
Metody
AcceptChanges() |
Potvrdí všechny změny provedené v tomto DataSet souboru od jeho načtení nebo od posledního AcceptChanges() zavolání. |
BeginInit() |
Zahájí inicializaci objektu DataSet , který se používá ve formuláři nebo používá jiná komponenta. 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() |
DataTableReader Vrátí hodnotu s jednou sadou výsledků na , DataTableve stejném pořadí, jako jsou tabulky zobrazené v kolekciTables. |
CreateDataReader(DataTable[]) |
Vrátí hodnotu DataTableReader s jednou sadou výsledků na 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é MarshalByValueComponent nástrojem a volitelně uvolní spravované prostředky. (Zděděno od MarshalByValueComponent) |
EndInit() |
Ukončí inicializaci objektu DataSet , který se používá ve formuláři nebo používá jiná komponenta. 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é od jeho načtení nebo od AcceptChanges() posledního volaného. |
GetChanges(DataRowState) |
Získá kopii DataSet obsahující všechny změny provedené od posledního načtení, nebo od doby, kdy AcceptChanges() byla volána, filtrována podle DataRowState. |
GetDataSetSchema(XmlSchemaSet) |
Získá kopii XmlSchemaSet dataset. |
GetHashCode() |
Slouží jako výchozí hashovací funkce. (Zděděno od Object) |
GetObjectData(SerializationInfo, StreamingContext) |
Zastaralé.
Naplní objekt serializace informací dat potřebných k serializaci objektu DataSet. |
GetSchemaSerializable() |
Vrátí serializovatelnou XmlSchema instanci. |
GetSerializationData(SerializationInfo, StreamingContext) |
Deserializuje data tabulky z binárního datového proudu nebo datového proudu XML. |
GetService(Type) |
Získá implementátor nástroje 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 má DataSet změny, včetně nových, odstraněných nebo upravených řádků. |
HasChanges(DataRowState) |
Získá hodnotu označující, zda DataSet má změny, včetně nových, odstraněných nebo upravených řádků, filtrované podle DataRowState. |
InferXmlSchema(Stream, String[]) | |
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 TextReader objektu na DataSet. |
InferXmlSchema(XmlReader, String[]) |
Použije schéma XML ze zadaného XmlReader objektu na DataSet. |
InitializeDerivedDataSet() |
Deserializujte všechna data tabulek datové sady z binárního datového proudu nebo datového proudu XML. |
IsBinarySerialized(SerializationInfo, StreamingContext) |
Kontroluje formát serializované reprezentace |
Load(IDataReader, LoadOption, DataTable[]) |
DataSet Vyplní hodnotu hodnotami ze zdroje dat pomocí zadaného IDataReaderobjektu DataTable pomocí pole instancí k zadání informací o schématu a oboru názvů. |
Load(IDataReader, LoadOption, FillErrorEventHandler, DataTable[]) |
DataSet Vyplní hodnotu hodnotami ze zdroje dat pomocí zadaného IDataReaderobjektu DataTable pomocí pole instancí k zadání informací o schématu a oboru názvů. |
Load(IDataReader, LoadOption, String[]) |
DataSet Vyplní hodnotu hodnotami ze zdroje dat pomocí zadaného IDataReaderřetězce pomocí pole řetězců k zadání názvů tabulek v rámci |
MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Objectsouboru . (Zděděno od Object) |
Merge(DataRow[]) | |
Merge(DataRow[], Boolean, MissingSchemaAction) |
Sloučí pole objektů do aktuálního DataRowDataSet, zachová nebo zahodí změny v objektu |
Merge(DataSet) |
Sloučí zadané DataSet schéma a jeho schéma do aktuálního |
Merge(DataSet, Boolean) |
Sloučí zadané DataSet schéma a jeho schéma do aktuálního |
Merge(DataSet, Boolean, MissingSchemaAction) |
Sloučí zadané DataSet schéma a jeho schéma s aktuálním |
Merge(DataTable) |
Sloučí zadané DataTable schéma a jeho schéma do aktuálního DataSetobjektu . |
Merge(DataTable, Boolean, MissingSchemaAction) |
Sloučí zadané DataTable schéma a jeho schéma do aktuálního |
OnPropertyChanging(PropertyChangedEventArgs) |
OnPropertyChanging(PropertyChangedEventArgs) Vyvolá událost. |
OnRemoveRelation(DataRelation) |
Nastane při odebrání objektu DataRelation z objektu DataTable. |
OnRemoveTable(DataTable) | |
RaisePropertyChanging(String) |
Odešle oznámení, že se zadaná DataSet vlastnost chystá změnit. |
ReadXml(Stream) |
Načte schéma XML a data do objektu DataSet pomocí zadaného Streamobjektu . |
ReadXml(Stream, XmlReadMode) |
Načte schéma XML a data do objektu DataSet pomocí zadaných Stream a XmlReadMode. |
ReadXml(String) |
Načte schéma XML a data do DataSet zadaného souboru. |
ReadXml(String, XmlReadMode) |
Načte schéma XML a data do DataSet souboru 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 XML a data 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 XML a data do objektu DataSet pomocí zadaných XmlReader a XmlReadMode. |
ReadXmlSchema(Stream) | |
ReadXmlSchema(String) |
Načte schéma XML ze zadaného souboru do .DataSet |
ReadXmlSchema(TextReader) |
Načte schéma XML ze zadaného TextReaderDataSetdo . |
ReadXmlSchema(XmlReader) | |
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 má být vlastnost trvalé. |
ShouldSerializeTables() |
Získá hodnotu označující, zda Tables má být vlastnost trvalé. |
ToString() |
String Vrátí hodnotu obsahující název Component, pokud existuje. Tato metoda by neměla být přepsána. (Zděděno od MarshalByValueComponent) |
WriteXml(Stream) | |
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 |
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 |
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 |
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 |
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 v komponentě. (Zděděno od MarshalByValueComponent) |
Initialized |
Nastane po DataSet inicializaci. |
MergeFailed |
Nastane, když cíl a zdroj DataRow mají stejnou hodnotu primárního klíče a EnforceConstraints je nastavená na hodnotu 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ých 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). |
Metody rozšíření
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.