Conjuntos de resultados y conjuntos de datos (Dispositivos)

Actualización: noviembre 2007

El Asistente para la configuración de orígenes de datos de Visual Studio puede generar el código del origen de datos en proyectos para dispositivos que están basados en DataSet o System.Data.SqlServerCe.SqlCeResultSet. El código generado representa un origen de datos en su proyecto de dispositivos que se puede enlazar a controles de la interfaz de usuario e intercambiar datos con una base de datos SQL Server Compact 3.5. Sin embargo, el código basado en SqlCeResultSet se ejecuta más rápidamente, utiliza menos memoria y es menos detallado que el código basado en DataSet. Esto se debe a que SqlCeResultSet utiliza un puntero para trabajar directamente con la base de datos, mientras que DataSet almacena una copia de los datos de la base de datos en la aplicación para dispositivos. En este tema se describen los orígenes de datos basados en SqlCeResultSet y DataSet-.

Nota:

De forma predeterminada, Visual Studio genera código basado en DataSet cuando utiliza el Asistente para orígenes de datos para crear un nuevo origen de datos. Para generar una o las dos clases, vea Cómo: Generar código SqlCeResultSet (Dispositivos).

El diagrama siguiente muestra la diferencia de arquitectura entre SqlCeResultSets y DataSets.

Conjuntos de resultados

Cuando el Asistente para la configuración de orígenes de datos genera un origen de datos basado en SqlCeResultSet, crea una clase que hereda de SqlCeResultSet. A diferencia de los orígenes de datos basados en DataSet, los orígenes de datos basados en SqlCeResultSet no almacenan datos. En su lugar, SqlCeResultSet mantiene un puntero a la base de datos y lee y actualiza los datos de la base de datos sin utilizar un TableAdapter. El acceso directo a la base de datos es posible porque SqlCeResultSet forma parte del proveedor de datos de .NET Compact Framework para SQL Server Compact 3.5 (SQL Server Mobile en versiones anteriores). Para obtener más información, vea Generar objetos ResultSet con tipo.

En conjunto, los orígenes de datos basados en SqlCeResultSet requieren menos memoria y tienen mejor rendimiento, pero tienen menos características que los orígenes de datos basados en DataSet.

Conjuntos de datos

Cuando el Asistente para la configuración de orígenes de datos genera un origen de datos basado en DataSet, crea las clases para representar los datos y una clase TableAdapter para intercambiar datos entre la aplicación y la base de datos. Las clases que representan los datos heredan de DataSet, Microsoft.Office.Interop.Excel.DataTabley DataRowy las clases almacenan los datos de la base de datos. El Asistente para orígenes de datos genera lo siguiente para reflejar la estructura relacional y las restricciones de la base de datos:

  • Una clase derivada de DataSet que contiene Datatable para cada tabla seleccionada en el Asistente para agregar orígenes de datos. Para obtener más información, vea DataSets con establecimiento de tipos (ADO.NET).

  • Cada clase derivada de DataTable también contiene un conjunto de objetos DataColumn que reflejan las columnas de la base de datos.

  • Una clase derivada de DataRow para cada tabla.

  • Restricciones relacionales de la base de datos, como no nulo, único, claves principales y claves externas.

  • Una clase TableAdapter para intercambiar datos entre la base de datos y los objetos de datos en la aplicación para dispositivos. La clase TableAdapter contiene métodos para leer los datos de una base de datos y escribir los datos modificados de nuevo en la base de datos. Para obtener más información, vea Información general sobre TableAdapter.

Las clases anteriores de este tema son compatibles con la arquitectura de ADO.NET. Por tanto, el modelo del acceso a datos se parece a los datos de ADO.NET que utiliza .NET Framework en el escritorio. Para obtener más información, vea Obtener acceso a datos (Visual Studio) y Acceso a datos y compatibilidad XML en .NET Compact Framework.

En conjunto, los orígenes de datos basados en DataSet tienen más características, pero también requieren más recursos de procesador y memoria que los basados en SqlCeResultSet.

Vea también

Tareas

Cómo: Generar código SqlCeResultSet (Dispositivos)

Conceptos

Recomendaciones sobre la estrategia de acceso a datos

Otros recursos

Página principal de los Libros en pantalla de SQL Server Compact

Trabajar con datos en proyectos de dispositivos administrados