DataSet Clase

Definición

Representa una caché de datos en memoria.

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
Herencia
Atributos
Implementaciones

Ejemplos

El ejemplo siguiente consta de varios métodos que, combinados, crean y rellenan desde DataSet la base de datos 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

Comentarios

Para obtener más información sobre esta API, consulte Comentarios complementarios de la API para DataSet.

Constructores

DataSet()

Inicializa una nueva instancia de la clase DataSet.

DataSet(SerializationInfo, StreamingContext)
Obsoletos.

Inicializa una nueva instancia de la clase DataSet con datos serializados.

DataSet(SerializationInfo, StreamingContext, Boolean)
Obsoletos.

Inicializa una nueva instancia de la clase DataSet con datos serializados.

DataSet(String)

Inicializa una nueva instancia de la clase DataSet con el nombre proporcionado.

Propiedades

CaseSensitive

Obtiene o establece un valor que indica si las comparaciones de cadena en los objetos DataTable distinguen entre mayúsculas y minúsculas.

Container

Obtiene el contenedor del componente.

(Heredado de MarshalByValueComponent)
DataSetName

Obtiene o establece el nombre del objeto DataSet actual.

DefaultViewManager

Obtiene una vista personalizada de los datos incluidos en DataSet, lo que permite filtrar, buscar y navegar mediante un DataViewManager personalizado.

DesignMode

Obtiene un valor que indica si el componente está actualmente en modo de diseño.

(Heredado de MarshalByValueComponent)
EnforceConstraints

Obtiene o establece un valor que indica si se siguen las reglas de restricción al intentar realizar cualquier operación de actualización.

Events

Obtiene la lista de controladores de eventos asociados a este componente.

(Heredado de MarshalByValueComponent)
ExtendedProperties

Obtiene la colección de la información personalizada del usuario asociada a DataSet.

HasErrors

Obtiene un valor que indica si hay errores en alguno de los objetos DataTable de este DataSet.

IsInitialized

Obtiene un valor que indica si el objeto DataSet está inicializado.

Locale

Obtiene o establece la información de configuración regional que se utiliza para comparar cadenas de la tabla.

Namespace

Obtiene o establece el espacio de nombres del objeto DataSet.

Prefix

Obtiene o establece un prefijo XML que crea alias para el espacio de nombres del objeto DataSet.

Relations

Obtiene la colección de relaciones que vincula las tablas y permite la navegación desde las tablas primarias a las secundarias.

RemotingFormat

Obtiene o establece el formato de serialización del objeto que se usa durante la DataSet comunicación remota.

SchemaSerializationMode

Obtiene o establece una enumeración SchemaSerializationMode para un objeto DataSet.

Site

Obtiene o establece una interfaz ISite para el objeto DataSet.

Tables

Obtiene la colección de tablas incluidas en DataSet.

Métodos

AcceptChanges()

Confirma todos los cambios realizados en este DataSet desde que se ha cargado o desde la última vez que se ha llamado a AcceptChanges().

BeginInit()

Activa la inicialización de un objeto DataSet que se emplea en un formulario o que utiliza otro componente. La inicialización se produce en tiempo de ejecución.

Clear()

Borra cualquier dato de DataSet mediante el procedimiento de quitar todas las filas de todas las tablas.

Clone()

Copia la estructura de DataSet, incluidos todos los esquemas, relaciones y restricciones de DataTable. No copia ningún dato.

Copy()

Copia la estructura y los datos para este objeto DataSet.

CreateDataReader()

Devuelve un objeto DataTableReader con un conjunto de resultados por cada DataTable, siguiendo la misma secuencia con la que aparecen las tablas en la colección Tables.

CreateDataReader(DataTable[])

Devuelve un objeto DataTableReader con un conjunto de resultados por cada DataTable.

DetermineSchemaSerializationMode(SerializationInfo, StreamingContext)

Determina la propiedad SchemaSerializationMode para un objeto DataSet.

DetermineSchemaSerializationMode(XmlReader)

Determina la propiedad SchemaSerializationMode para un objeto DataSet.

Dispose()

Libera todos los recursos que usa MarshalByValueComponent.

(Heredado de MarshalByValueComponent)
Dispose(Boolean)

Libera los recursos no administrados que usa MarshalByValueComponent y, de forma opcional, libera los recursos administrados.

(Heredado de MarshalByValueComponent)
EndInit()

Finaliza la inicialización de un objeto DataSet que se emplea en un formulario o que utiliza otro componente. La inicialización se produce en tiempo de ejecución.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
GetChanges()

Obtiene una copia del objeto DataSet que contiene todos los cambios que se le han realizado desde que se cargó o se llamó a AcceptChanges() por última vez.

GetChanges(DataRowState)

Obtiene una copia del objeto DataSet que contiene todos los cambios que se le han realizado desde la última vez que se cargó, o desde que se llamó a AcceptChanges(), filtrado por DataRowState.

GetDataSetSchema(XmlSchemaSet)

Obtiene una copia de XmlSchemaSet para el conjunto de datos.

GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetObjectData(SerializationInfo, StreamingContext)
Obsoletos.

Rellena un objeto de información de serialización con los datos necesarios para serializar DataSet.

GetSchemaSerializable()

Devuelve una instancia serializable de XmlSchema.

GetSerializationData(SerializationInfo, StreamingContext)

Deserializa los datos de la tabla a partir de la secuencia binaria o XML.

GetService(Type)

Obtiene el implementador de IServiceProvider.

(Heredado de MarshalByValueComponent)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
GetXml()

Devuelve la representación XML de los datos almacenados en DataSet.

GetXmlSchema()

Devuelve el esquema XML para la representación XML de los datos almacenados en DataSet.

HasChanges()

Obtiene un valor que indica si DataSet presenta cambios, incluyendo filas nuevas, eliminadas o modificadas.

HasChanges(DataRowState)

Obtiene un valor que indica si DataSet presenta cambios, incluidas filas nuevas, eliminadas o modificadas, filtrados por DataRowState.

InferXmlSchema(Stream, String[])

Aplica el esquema XML del objeto Stream especificado al objeto DataSet.

InferXmlSchema(String, String[])

Aplica el esquema XML del archivo especificado al DataSet.

InferXmlSchema(TextReader, String[])

Aplica el esquema XML del objeto TextReader especificado al objeto DataSet.

InferXmlSchema(XmlReader, String[])

Aplica el esquema XML del objeto XmlReader especificado al objeto DataSet.

InitializeDerivedDataSet()

Deserializa todos los datos de tablas del conjunto de datos a partir de la secuencia binaria o XML.

IsBinarySerialized(SerializationInfo, StreamingContext)

Inspecciona el formato de la representación serializada de DataSet.

Load(IDataReader, LoadOption, DataTable[])

Rellena un objeto DataSet de valores de un origen de datos utilizando la interfaz IDataReader proporcionada, que usa una matriz de instancias de DataTable para suministrar la información sobre el espacio de nombres y el esquema.

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

Rellena un objeto DataSet de valores de un origen de datos utilizando la interfaz IDataReader proporcionada, que usa una matriz de instancias de DataTable para suministrar la información sobre el espacio de nombres y el esquema.

Load(IDataReader, LoadOption, String[])

Rellena un objeto DataSet de valores de un origen de datos utilizando la interfaz IDataReader proporcionada, que usa una matriz de cadenas para suministrar los nombres para las tablas de DataSet.

MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
Merge(DataRow[])

Combina una matriz de objetos DataRow en el DataSet actual.

Merge(DataRow[], Boolean, MissingSchemaAction)

Combina una matriz de objetos DataRow en el DataSet actual, conservando o descartando los cambios efectuados en el DataSet y controlando un esquema incompatible de acuerdo con los argumentos especificados.

Merge(DataSet)

Combina un objeto DataSet especificado y su esquema en el objeto DataSet actual.

Merge(DataSet, Boolean)

Combina un DataSet y su esquema en el DataSet actual, conservando o descartando cualquier cambio efectuado en este DataSet de acuerdo con el argumento especificado.

Merge(DataSet, Boolean, MissingSchemaAction)

Combina un DataSet especificado y su esquema con el DataSet actual, conservando o descartando los cambios efectuados en el DataSet actual y controlando un esquema incompatible de acuerdo con los argumentos especificados.

Merge(DataTable)

Combina un objeto DataTable especificado y su esquema en el objeto DataSet actual.

Merge(DataTable, Boolean, MissingSchemaAction)

Combina un DataTable especificado y su esquema en el DataSet actual, conservando o descartando los cambios efectuados en el DataSet y controlando un esquema incompatible de acuerdo con los argumentos especificados.

OnPropertyChanging(PropertyChangedEventArgs)

Genera el evento OnPropertyChanging(PropertyChangedEventArgs).

OnRemoveRelation(DataRelation)

Se produce cuando se quita un objeto DataRelation de un DataTable.

OnRemoveTable(DataTable)

Se produce cuando se quita un DataTable de un DataSet.

RaisePropertyChanging(String)

Envía una notificación que indica que se va a cambiar la propiedad especificada de DataSet.

ReadXml(Stream)

Lee los datos y el esquema XML en el objeto DataSet mediante el objeto Stream especificado.

ReadXml(Stream, XmlReadMode)

Lee el esquema y los datos XML del objeto DataSet mediante el objeto Stream y la enumeración XmlReadMode especificados.

ReadXml(String)

Lee el esquema y los datos XML del DataSet mediante el archivo especificado.

ReadXml(String, XmlReadMode)

Lee el esquema y los datos XML del DataSet mediante el archivo y el XmlReadMode especificados.

ReadXml(TextReader)

Lee los datos y el esquema XML en el objeto DataSet mediante el objeto TextReader especificado.

ReadXml(TextReader, XmlReadMode)

Lee el esquema y los datos XML del objeto DataSet mediante el objeto TextReader y la enumeración XmlReadMode especificados.

ReadXml(XmlReader)

Lee los datos y el esquema XML en el objeto DataSet mediante el objeto XmlReader especificado.

ReadXml(XmlReader, XmlReadMode)

Lee el esquema y los datos XML del objeto DataSet mediante el objeto XmlReader y la enumeración XmlReadMode especificados.

ReadXmlSchema(Stream)

Lee el esquema XML del objeto Stream especificado en el objeto DataSet.

ReadXmlSchema(String)

Lee el esquema XML del archivo especificado en el DataSet.

ReadXmlSchema(TextReader)

Lee el esquema XML del objeto TextReader especificado en el objeto DataSet.

ReadXmlSchema(XmlReader)

Lee el esquema XML del objeto XmlReader especificado en el objeto DataSet.

ReadXmlSerializable(XmlReader)

Omite los atributos y devuelve un conjunto de datos vacío.

RejectChanges()

Deshace todos los cambios realizados en el DataSet desde que se ha creado o desde que se ha llamado por última vez a AcceptChanges().

Reset()

Borra todas las tablas y quita todas las relaciones, restricciones externas y tablas de DataSet. Las subclases deben reemplazar a Reset() para restaurar el estado original de un DataSet.

ShouldSerializeRelations()

Obtiene un valor que indica si se debe conservar la propiedad Relations.

ShouldSerializeTables()

Obtiene un valor que indica si se debe conservar la propiedad Tables.

ToString()

Devuelve una String que contiene el nombre del Component, si existe. Este método no se debe invalidar.

(Heredado de MarshalByValueComponent)
WriteXml(Stream)

Escribe los datos actuales para el objeto DataSet mediante el objeto Stream especificado.

WriteXml(Stream, XmlWriteMode)

Escribe los datos actuales y, de forma opcional, el esquema para el objeto DataSet mediante el objeto Stream y la enumeración XmlWriteMode especificados. Para escribir el esquema, establezca el valor del parámetro mode en WriteSchema.

WriteXml(String)

Escribe los datos actuales para el DataSet en el archivo especificado.

WriteXml(String, XmlWriteMode)

Escribe los datos actuales y, de forma opcional, el esquema para el objeto DataSet en el archivo indicado mediante la enumeración XmlWriteMode especificada. Para escribir el esquema, establezca el valor del parámetro mode en WriteSchema.

WriteXml(TextWriter)

Escribe los datos actuales para el objeto DataSet mediante el objeto TextWriter especificado.

WriteXml(TextWriter, XmlWriteMode)

Escribe los datos actuales y, de forma opcional, el esquema para el objeto DataSet mediante el objeto TextWriter y la enumeración XmlWriteMode especificados. Para escribir el esquema, establezca el valor del parámetro mode en WriteSchema.

WriteXml(XmlWriter)

Escribe los datos actuales para el DataSet en el XmlWriter especificado.

WriteXml(XmlWriter, XmlWriteMode)

Escribe los datos actuales y, de forma opcional, el esquema para el objeto DataSet mediante el objeto XmlWriter y la enumeración XmlWriteMode especificados. Para escribir el esquema, establezca el valor del parámetro mode en WriteSchema.

WriteXmlSchema(Stream)

Escribe la estructura DataSet como un esquema XML al objeto Stream especificado.

WriteXmlSchema(Stream, Converter<Type,String>)

Escribe la estructura DataSet como un esquema XML al objeto Stream especificado.

WriteXmlSchema(String)

Escribe la estructura del DataSet como un esquema XML en un archivo.

WriteXmlSchema(String, Converter<Type,String>)

Escribe la estructura del DataSet como un esquema XML en un archivo.

WriteXmlSchema(TextWriter)

Escribe la estructura DataSet como un esquema XML al objeto TextWriter especificado.

WriteXmlSchema(TextWriter, Converter<Type,String>)

Escribe la estructura de DataSet como un esquema XML en el objeto TextWriter especificado.

WriteXmlSchema(XmlWriter)

Escribe la estructura del DataSet como un esquema XML en un objeto XmlWriter.

WriteXmlSchema(XmlWriter, Converter<Type,String>)

Escribe la estructura de DataSet como un esquema XML en el objeto XmlWriter especificado.

Eventos

Disposed

Agrega un controlador de eventos para escuchar el evento Disposed sobre el componente.

(Heredado de MarshalByValueComponent)
Initialized

Se produce después de inicializar DataSet.

MergeFailed

Se produce cuando unos DataRow de origen y de destino tienen el mismo valor de clave principal y EnforceConstraints se establece en true.

Implementaciones de interfaz explícitas

IListSource.ContainsListCollection

Para obtener una descripción de este miembro, vea ContainsListCollection.

IListSource.GetList()

Para obtener una descripción de este miembro, vea GetList().

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Rellena un objeto de información de serialización con los datos necesarios para serializar DataSet.

IXmlSerializable.GetSchema()

Para obtener una descripción de este miembro, vea GetSchema().

IXmlSerializable.ReadXml(XmlReader)

Para obtener una descripción de este miembro, vea ReadXml(XmlReader).

IXmlSerializable.WriteXml(XmlWriter)

Para obtener una descripción de este miembro, vea WriteXml(XmlWriter).

Se aplica a

Seguridad para subprocesos

Este tipo es seguro para las operaciones de lectura multiproceso. Debe sincronizar las operaciones de escritura.

Consulte también