Share via


Generar objetos ResultSet con tipo

Actualización: noviembre 2007

Cuando la propiedad CustomTool de un archivo de esquema XSD se establece en MSResultSetGenerator, se generan los objetos de origen de datos ResultSet escritos en lugar de los objetos de origen de datos DataSet normales. Los ResultSet son cursores de base de datos rápidos que admiten el enlace de datos de interfaz de usuario, el desplazamiento hacia delante y hacia atrás, y la actualización de datos en la base de datos. Como modelo de conexión permanente, ResultSet mantienen una conexión activa a la base de datos.

Funciones escritas de ResultSet

Los objetos con tipo generados mediante ResultSet ofrecen un acceso con seguridad de tipos a la base de datos, de un modo muy parecido a los DataSets con tipo. De este modo, el código generado garantiza que los datos que se pasan entre la aplicación y la base de datos coinciden con el esquema de base de datos en el tiempo de compilación. El código con tipo generado mediante ResultSet se extiende a la clase base ResultSet de SQL Server Compact 3.5 para proporcionar las propiedades y métodos específicos a la tabla de base de datos de destino.

En los párrafos siguientes se resumen las características del código generado para un ResultSet con tipo.

  • Constructores   El ResultSet generado con tipo contiene dos constructores. El constructor predeterminado se utiliza tanto para los escenarios básicos en tiempo de ejecución como para los en tiempo de diseño. El tiempo de diseño de Visual Studio exige que el constructor predeterminado realice una conexión a la base de datos que reside en el equipo de programación local. Así pues, el código generado contiene una cadena de conexión al archivo de base de datos local de SQL Server Compact 3.5. Para el tiempo de ejecución, el constructor predeterminado cambia al archivo de base de datos local de SQL Server Compact 3.5 del mismo directorio que la aplicación de ejecución. Éste es un escenario en tiempo de ejecución básico.

  • Cadenas de conexión   Si el escenario en tiempo de ejecución es complejo, por ejemplo, cuando el archivo de base de datos SQL Server Compact 3.5 no se encuentra en el directorio de ejecución, o si la cadena de conexión se varía de otra manera, como una contraseña, se puede utilizar el constructor sobrecargado. El constructor sobrecargado toma dos argumentos: una cadena de conexión personalizada y un indicador ResultSetOptions personalizado.

  • Propiedad Connection   La propiedad de conexión es el objeto SqlCeConnection activo que utiliza ResultSet con tipo para tener acceso a los datos de la base de datos. La propiedad de conexión es pública y permite el acceso para administrar el estado de la conexión del ResultSet escrito. Por ejemplo, la conexión puede ser necesaria para algunas transacciones.

  • Acceso seguro a las columnas de la tabla escrito   El código generado crea un descriptor de acceso de propiedad para cada columna de la tabla de datos. El tipo de propiedad se determina asignando el tipo de base de datos subyacente a un tipo de .NET Framework. Por ejemplo, nvarchar se asigna a una cadena de .NET Framework. Dado que la propiedad generada admite los descriptores de acceso Get y Set, permite la extracción e inserción de datos mediante cadenas de .NET Framework en lugar del elemento nvarchar de la base de datos subyacente. Cada columna dispone también de un método IsxxxDBNull y SetxxxDBNull, donde xxx es el nombre de columna, para posibilitar la obtención y la configuración de DBNull en la base de datos.

  • Método AddxxxRecord (xxx es el nombre de la tabla)   Este método permite agregar nuevas filas a la tabla de base de datos. El método AddxxxRecord tiene un parámetro para cada columna de la tabla de datos, excepto para las columnas que se incrementan automáticamente, cuyos valores les son asignados por el motor de la base de datos. Todos los parámetros se vuelven a declarar como tipos de .NET Framework, habilitando un uso fácil con la aplicación y obteniendo un resumen del tipo de base de datos subyacente. No es necesario llamar al método Update después de llamar a este método. Una vez realizada la llamada, se confirma la nueva fila en la base de datos.

  • Método DeletexxxRecord (xxx es el nombre de la tabla) Este método elimina la fila actual de la base de datos. A diferencia de los DataSets, esta transición no se almacena en memoria caché y, una vez llamada, se elimina la fila de la base de datos. No tiene que llamar a la actualización después de llamar a este método.

  • Método Bind   El método de enlace toma un parámetro, BindingSource, que está enlazado a los datos de uno o varios controles de interfaz de usuario en el formulario. A continuación, este método enlaza BindingSource a la instancia del ResultSet con tipo, completando la cadena de enlace de datos y permitiendo que los controles muestren los datos directamente en la base de datos.

    Nota:

    El escenario en tiempo de diseño requiere una cadena codificada de conexión a la base de datos de SQL Server Compact 3.5. Esta cadena de conexión se puede caducar si, por ejemplo, un proyecto se comparte entre programadores. Como resultado, es posible que la ventana Origen de datos o el Diseñador de Windows Forms no puedan abrir el proyecto. Para corregir esta situación, puede volver a generar el código ResultSet con tipo. En Explorador de soluciones, haga clic con el botón secundario en el archivo de esquema XSD y, a continuación, haga clic en Ejecutar herramienta personalizada.

Vea también

Conceptos

Conjuntos de resultados y conjuntos de datos (Dispositivos)

Otros recursos

Trabajar con datos en proyectos de dispositivos administrados