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 datovou sadu.
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 |
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 | |
Tables |
Získá kolekci tabulek obsažených v objektu DataSet. |
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() |
Type Získá z aktuální instance. (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[]) | |
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[]) | |
InitializeDerivedDataSet() |
Deserializovat všechna data tabulek datové sady z binárního nebo XML streamu. |
IsBinarySerialized(SerializationInfo, StreamingContext) |
Kontroluje formát serializované reprezentace |
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 |
MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Objectsouboru . (Zděděno od Object) |
Merge(DataRow[]) | |
Merge(DataRow[], Boolean, MissingSchemaAction) |
Sloučí pole DataRow objektů do aktuálního DataSet, zachová nebo zahodí změny v objektu |
Merge(DataSet) |
Sloučí zadaný DataSet 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 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 |
OnPropertyChanging(PropertyChangedEventArgs) |
OnPropertyChanging(PropertyChangedEventArgs) Vyvolá událost. |
OnRemoveRelation(DataRelation) |
Vyvolá se při DataRelation odebrání objektu z objektu DataTable. |
OnRemoveTable(DataTable) | |
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) | |
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) | |
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) | |
WriteXml(Stream, XmlWriteMode) |
Zapíše aktuální data a volitelně schéma pro DataSet pomocí zadaných Stream a XmlWriteMode. Pokud chcete zapsat schéma, nastavte hodnotu parametru |
WriteXml(String) |
Zapíše aktuální data pro do DataSet zadaného souboru. |
WriteXml(String, XmlWriteMode) |
Zapíše aktuální data a volitelně schéma pro do DataSet zadaného souboru pomocí zadaného XmlWriteModesouboru . Pokud chcete zapsat schéma, nastavte hodnotu parametru |
WriteXml(TextWriter) |
Zapíše aktuální data pro pomocí DataSet zadaného TextWriter. |
WriteXml(TextWriter, XmlWriteMode) |
Zapíše aktuální data a volitelně schéma pro DataSet pomocí zadaných TextWriter a XmlWriteMode. Pokud chcete zapsat schéma, nastavte hodnotu parametru |
WriteXml(XmlWriter) | |
WriteXml(XmlWriter, XmlWriteMode) |
Zapíše aktuální data a volitelně schéma pro DataSet pomocí zadaných 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 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é
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro