Compartir a través de


Directrices sobre los datos dinámicos de ASP.NET

Actualización: noviembre 2007

Los datos dinámicos de ASP.NET permiten seleccionar el nivel de personalización adecuado a sus necesidades. Esta sección contiene instrucciones y sugerencias que pueden ayudarle a realizar sus tareas.

Los datos dinámicos permiten crear rápidamente una aplicación web completa que tiene capacidades dinámicas plenas. También permite integrar con facilidad una base de datos en un sitio web y seleccionar las capacidades dinámicas específicas necesarias.

Los datos dinámicos de ASP.NET proporcionan múltiples posibilidades de personalización que permiten adaptar un sitio web a sus necesidades, desde la capa de la presentación a la capa de los datos.

Crear un sitio web mediante scaffolding

Si debe crear rápidamente un sitio web controlado por datos, mediante los datos dinámicos de ASP.NET puede crear con facilidad una aplicación web completa con plenas capacidades dinámicas. Los datos dinámicos admiten scaffolding de web, que permite ejecutar la aplicación basada en el modelo de datos con una cantidad mínima de código, ayudándole a lograr su objetivo. Aunque este scaffolding de web tiene una interfaz de usuario estándar, permite realizar operaciones de creación, lectura, actualización y eliminación (CRUD) en las tablas. Asimismo, tiene compatibilidad completa con las relaciones. Puede utilizar el scaffolding para crear una aplicación básica y, a continuación, aplicar las personalizaciones adecuadas. Para obtener más información, vea Tutorial: Crear un nuevo sitio web de datos dinámicos con la técnica scaffolding.

Para obtener más información, vea Información general sobre los datos dinámicos de ASP.NET.

Agregar datos dinámicos a un sitio web existente

Los datos dinámicos de ASP.NET permiten integrar el comportamiento de los controles de datos dinámicos en el sitio web existente, pudiendo seleccionar las capacidades dinámicas específicas que necesita. Para ello, debe realizar los pasos que se detallan a continuación:

Para obtener más información, vea Tutorial: Agregar datos dinámicos a un sitio web existente.

Utilizar atributos de validación

Puede proporcionar información adicional a los datos dinámicos utilizando los atributos System.ComponentModel.DataAnnotations para aplicar metadatos a los campos de datos del modelo de datos. Los datos dinámicos utilizan esta información, por ejemplo, para personalizar la manera en que se representa la interfaz de usuario para mostrar y modificar campos de datos.

Utilizar atributos de validación

Al aplicar los atributos de validación debe cumplir las siguientes restricciones de uso:

  • El atributo se puede aplicar a una propiedad o un campo.

  • El atributo solo puede aplicarse una vez.

Aplicar atributos de validación

A continuación se enumeran los pasos que debe seguir para aplicar cualquier atributo System.ComponentModel.DataAnnotations a un campo de datos.

  • En la carpeta App_Code de una aplicación web, implemente un archivo de clase que incluya una clase parcial de contexto de datos. Esta clase representa la tabla que contiene el campo de datos al que desea aplicar el atributo.

  • Cree otra clase que actuará como la clase de metadatos asociada. Puede utilizar cualquier nombre para la clase, pero deberá coincidir con el nombre al que se hace referencia en el atributo MetadataTypeAttribute aplicado a la clase parcial, tal y como se explica a continuación. Coloque esto en el mismo archivo de clase que la clase que acaba de crear.

  • En la clase de metadatos asociada, cree una propiedad o campo público cuyo nombre sea igual que el nombre del campo de datos al que debe aplicar el atributo de validación.

  • Aplique el atributo MetadataTypeAttribute a la definición de clase parcial. El parámetro del atributo es el nombre de la clase de metadatos asociada.

Generar errores de validación

Los atributos System.ComponentModel.DataAnnotations permiten crear errores personalizados o utilizar los errores integrados cuando se produce un error en la validación. Por esta razón, los atributos de validación pueden tomar cualquiera de los parámetros de error con nombre

  • ErrorMessage. Este parámetro especifica el mensaje de error que está asociado a un control de validación. Utilice este parámetro para especificar un mensaje de error personalizado no traducible y quizás para invalidar el mensaje traducible predeterminado.

  • ErrorMessageResourceName. Este parámetro especifica el recurso de mensaje de error que está asociado a un control de validación. Utilice este parámetro para especificar un archivo de recursos que contenga mensajes de error traducibles

  • ErrorMessageResourceType. Este parámetro especifica el tipo de mensaje de error que está asociado a un control de validación. Utilice este parámetro para identificar el mensaje de error tal como está definido en el archivo de recursos. El archivo de recursos se especifica utilizando el parámetro anterior.

A continuación se enumeran las posibles opciones al utilizar mensajes de error de atributos de validación:

  • Puede utilizar los mensajes de error predeterminados que siempre están traducidos. En este caso, no hace especificar ninguno de los parámetros anteriores.

  • Puede facilitar un mensaje de error personalizado no traducible que invalide el mensaje predeterminado mediante el parámetro ErrorMessage.

  • Puede proporcionar un archivo de recursos de mensaje de error traducible mediante el parámetro ErrorMessageResourceName. A continuación, especifique el mensaje de error incluido en el archivo de recursos utilizando el parámetro ErrorMessageResourceType.

Seleccionar el modelo de datos

LINQ to SQL y Entity Framework tienen mucho en común, pero cada uno posee características destinadas a escenarios diferentes. LINQ to SQL está diseñado para desarrollar rápidamente aplicaciones en relación al esquema de Microsoft SQL Server existente. Entity Framework proporciona objetos y acceso de capa de almacenamiento a Microsoft SQL Server y a bases de datos de otros fabricantes a través de una asignación flexible al esquema relacional existente, con correspondencia imprecisa.

LINQ to SQL

LINQ to SQL tiene características diseñadas para la base de datos de Microsoft SQL Server. Permite tener una vista con establecimiento inflexible de tipos del esquema de base de datos existente.

LINQ to SQL admite una asignación directa, una a una, del esquema de la base de datos existente a las clases .NET Framework. Una tabla única se puede asignar a una clase única y las claves externas se pueden exponer como relaciones con establecimiento inflexible de tipos. 

Puede generar consultas LINQ sobre tablas, vistas o funciones con valores de tabla y devolver resultados como objetos con establecimiento inflexible de tipos, y llamar a procedimientos almacenados que devuelven resultados con establecimiento inflexible de tipos a través de métodos con establecimiento inflexible de tipos. Un principio de diseño clave de LINQ to SQL es que funciona para los casos más comunes. Por consiguiente, por ejemplo, si tiene acceso a una colección de pedidos a través de la propiedad Orders de un cliente, y no se han recuperado previamente los pedidos de ese cliente, LINQ to SQL los obtendrá automáticamente para usted.

ADO.NET Entity Framework

ADO.NET Entity Framework tiene características diseñadas para escenarios empresariales. En una empresa, un administrador de bases de datos controla normalmente la base de datos. El esquema generalmente se optimiza por consideraciones de almacenamiento (rendimiento, coherencia, particiones) en lugar de exponer un buen modelo de aplicación, y puede cambiar con el tiempo a medida que evolucionan los datos y modelos de uso.

Entity Framework está diseñado para exponer un modelo de datos orientado a aplicaciones, con correspondencia imprecisa, y puede variar significativamente respecto al esquema de base de datos existente.

Por ejemplo, puede asignar una única clase (o entidad) a varias tablas o vistas, o asignar varias clases a la misma tabla o vista. Puede asignar una jerarquía de herencia a una única tabla o vista (como en LINQ to SQL) o a varias tablas o vistas. Esta asignación flexible se especifica mediante declaración para responder a la evolución del esquema de base de datos en el tiempo sin tener que volver a compilar la aplicación.

Entity Framework incluye LINQ to Entities que presenta muchas de las mismas características que LINQ to SQL sobre el modelo de datos de aplicación conceptual.

Para obtener más información, vea Introducing LINQ to Relational Data.

Vea también

Tareas

Tutorial: Agregar datos dinámicos a un sitio web existente

Tutorial: Agregar datos dinámicos a un sitio web existente

Conceptos

Información general sobre las plantillas de campos de datos dinámicos de ASP.NET

Información general sobre la plantilla de página y la técnica scaffolding de datos dinámicos de ASP.NET

Información general sobre los datos dinámicos de ASP.NET

Referencia

Clases y métodos parciales (Guía de programación de C#)

Otros recursos

LINQ to SQL

ADO.NET Entity Framework