LABORATORIO Asp - Net - 2.
LABORATORIO Asp - Net - 2.
LABORATORIO Asp - Net - 2.
LABORATORIO ASP.NET – 2.
El contenido de este laboratorio tiene todos los derechos reservados, por lo tanto no
se puede reproducir, transcribir, almacenar a un sistema de recuperación o de
alteración, asimismo la traducción a otro idioma de ninguna forma o por ningún
medio mecánico, manual, electrónico, magnético, óptico o de otro modo.
2 ASP.NET
Controles de Validación
ValidationSummary
Este control muestra un resumen de todos los errores de validación en línea en una página Web ocurridos a
la generación de un postback, en un cuadro de mensaje o en ambos.
Esta clase ValidationSummary se utiliza para resumir los mensajes de error ocurridos de todos los
controles de validación de una página Web que se configuraron, puede crear un resumen de los mensajes de
error procedentes de un grupo de controles de validación de una página Web si asigna el control
ValidationSummary a un grupo determinado para la validación, dentro de la propiedad ValidationGroup.
RequiredFieldValidator
Este control RequiredFieldValidator comprueba que el valor ingresado del control es distinto de su valor inicial,
incluso convierte al control de entrada asociado en un campo obligatorio.
Tener en cuenta que este control de entrada no supera la validación si su valor es igual a la propiedad
InitialValue una vez que ha perdido el foco.
Se pueden asociar varios controles de validación al mismo control de entrada. Se puede utilizar, por
ejemplo, un RequiredFieldValidator para garantizar que se han escrito datos en un control, y usar al
mismo tiempo un RangeValidator para comprobar que estos datos están comprendidos en un intervalo
especificado.
RangeValidator
Es te control comprueba si el valor de un control de entrada está comprendido en un intervalo especificado
de valores, el RangeValidator comprueba si el valor de un control de entrada está dentro de un intervalo
especificado, dentro de sus propiedades clave para realizar la validación, propiedad ControlToValidate
contiene el control de entrada que se va a validar y las propiedades MinimumValue y MaximumValue
especifican los valores mínimo y máximo del intervalo válido.
RegularExpressionValidator
Este control comprueba si el valor de un control de entrada asociado coincide con el modelo especificado por
una expresión regular seleccionada la cual se muestra dentro de la propiedad ValidationExpression.
CompareValidator
Este control compara el valor especificado por el usuario en un control de entrada con el valor especificado
en otro control de entrada o con un valor constante.
Se debe usar para comparar el valor especificado por el usuario en un control de entrada, como un control
TextBox, con el valor especificado en otro control de entrada o con un valor constante previamente definido.
Asimismo también puede utilizar el control CompareValidator para indicar si el valor introducido en un
control de entrada se puede convertir al tipo de datos especificado por la propiedad
BaseCompareValidator.Type.
Se debe de especificar el control de entrada que desee validar estableciendo la propiedad ControlToValidate.
Si desea comparar un control de entrada específico con otro control de entrada, establezca la propiedad
ControlToCompare para especificar el control con el que desea comparar.
CustomValidator
Este control realiza una validación definida por el usuario en un control de entrada, validación personal del
usuario, el control CustomValidator es un control distinto del control de entrada que valida, lo que permite
controlar dónde se muestra el mensaje de validación. El control de validación siempre realiza la validación
en el servidor
OBS:
Para la creación de estos controles primero necesitamos crear una tabla HTML, el cual debe ser escrito a
nivel HTML, de la siguiente forma:
Ejemplo de Aplicación:
I.- Crear un Web Forms con el nombre Ingreso con el siguiente diseño:
II.- Definición de los nombres de los controles, estos deben cambiarse dentro de la propiedad ID del
control seleccionado:
txtApellido
txtFecNac
txtEdad
txtEmail
III.- Dentro de estos se debe crear lo siguientes controles de RequiredFieldValidator, con los nombres
reqNombres, reqApellidos, remedad, reqEmail, reqFecNac como se muestra en la siguiente grafica:
reqNombres:
ID = reqNombres
ErrorMesage = “Debe escribir su nombre”
Text = *
ControlValidate = txtNombre
Completar lo mismo para los demás controles, con descripciones que correspondan.
V.- Nuevamente sobre los controles de validación para la Edad colocamos un RangeValidator con el
nombre reqValidaEdad
reqValidadEdad:
ID = reqValidadEdad
ErrorMesage = “Su edad no es permitida”
Text =*
MaximumValue = 45
MinimumValue = 18
ControlValidate = txtEdad
Luego agregamos un RegularExpressionValidator al lado del campo Email con las siguientes
propiedades:
reqValidadEmail:
ID = reqValidadEmail
ErrorMesage = “Su correo no es correcto”
Text =*
ControlValidate = txtEmail
ValidationExpression =
reqValidadEmailPers:
ID = reqValidadEmailPers
ErrorMesage = “Su correo no es valido”
Text = *
ControlValidate = txtEmail
VI.- Finalmente colocamos en control ValidationSummary en la parte final con las siguientes
propiedades:
reqErrores
ID= reqErrores
HeaderText = “Errores Encontrados”
BorderWith = 1
BorderOutset = OutSet
VI.- Dar doble clic sobre el control CustomValidator el cual se mostrara lo siguiente:
VII.- Ahora debemos crear uno para validar el código postal, con la condición de que el formato del código
postal sea el siguiente:
##*###*##*##
(País) * (Provincia) * (Ciudad) * (Local)
Actualmente en las aplicaciones Web profesionales se requiere cada vez con más fuerza la implementación
de un sistema multi-idioma que permita la visualización tanto de los contenidos de la base de datos como
de los componentes de la capa de presentación (como menús, labels, treeviews) en diferentes idiomas. En
este artículo nos ocuparemos de la capa de presentación y en concreto de cómo hacer que un menú sea
multi-idioma.
SiteMapPath:
Este control permite la visualización de la ruta completa de una estructura jerárquica por ejemplo un
menú. Siendo posible acceder desde el a los diferentes nodos.
Además de crear un menú de exploración mediante el control TreeView, en cada página puede
agregar funciones de exploración que muestren dónde se encuentra la página en la jerarquía actual.
Este tipo de control de exploración también se conoce como ruta de exploración. ASP.NET proporciona
el control SiteMapPath que puede implementar automáticamente funciones de exploración de
páginas.
Menu:
Este control permite visualizar una estructura en forma de menú tradicional
DataSourceID
SiteMapProvider
Una vez que tenemos el componente menú como componente de exploración, necesitamos poder enlazar
ese componente, con algún “almacén de datos”, bien sea una base de datos, o bien, un fichero con la
estructura definida del menú. Para implementar esto, ASP.NET 2.0 nos ofrece el Model Provider. En
concreto, nos interesa la clase abstracta SiteMapProvider, de la que hereda la clase
XMLSiteMapProvider que a su vez utiliza como almacén de datos un fichero XML llamado web.sitemap,
en el que define la estructura de menús. Vemos un ejemplo de web.sitemap:
I.- Crear un Web Forms con el nombre SitiosMenu, el cual debe tener el siguiente diseño simple, el cual
debe tener un control Menú y un SiteMapDataSource.
En esta parte crearemos en forma dinámica, el llenado de una tabla para esto debemos tener algunos
conceptos de los objetos relacionado a la base de datos.
I.- Debemos crear una nueva página llamada Favoritos, con el siguiente diseño:
Objeto CheckBoxList
Objeto RadioButtonList
TableCell
TableRow
Aparte de los objetos TableCell, podemos también usar los objetos DropDownList y TextBox.
III.- Para empezar con este ejemplo crearemos solo la cabecera de la tabla creada en la página, para ver
el funcionamiento, la idea consiste en crear 3 celdas agregar a una fila y esta agregarla a la tabla.
V.- Una vez creada la tabla con los registros, mostraremos la información, es decir nuestra aplicación Web
necesitara conectarse a una base de datos, para lograr esto necesitamos tener el usuario ASP.NET como
usuario autenticado en el SQL Server, para esto debemos entrar al Administrador Corporativo y ubicarnos
en la carpeta Security Logins:
En la lista de usuarios damos clic derecho y seleccionamos New Login, y al costado de Name
seleccionamos el botón (…)
En esta pantalla debemos seleccionar el usuario ASP.NET agregarlo y darle en aceptar, finalmente
debemos obtener lo siguiente:
VI.- Para conectarnos a la base de datos necesitamos utiliza dos espacios de nombres, tanto para la
arquitectura y objetos de ADO.NET para Sql Server, agregar entonces lo siguiente:
VIII.- En el load del Web Forms colocar lo siguiente, siguiendo las indicaciones del instructor:
IX.- Hasta acá, solo agregamos la cabecera de la tabla, para realizar la muestra de la tabla creada
tendríamos que agregar lo siguiente:
Practica Desarrollada:
Se le entregara las plantillas de una Page master y un Web forms con el siguiente diseño:
Web Forms: Se debe utilizar la misma tabla creada anteriormente y mostrar la información de la
siguiente forma indicada en el grafico.