miércoles, 25 de abril de 2012
Acceso a datos - El objectDataSource - Parte 1
Seguimos ahora con los tutoriales de Datos.
Para bajar las bases de datos, sigan este tutorial.
Y aquí está el tutoriald de datos:
A la noche, la segunda parte!
Saludos!
martes, 24 de abril de 2012
Controles en ASP.Net - Validadores
¡Me cansé de escribir! Ahora vamos a seguir con los tutoriales en formato de video.
¡Cuéntenme qué les parece!
lunes, 23 de abril de 2012
Controles en ASP.Net
Hoy vamos a hacer una pequeña práctica sobre el uso de controles en ASP.Net. Nuestras aplicaciones muestran datos, y, para mostrarlas, se valen de controles.
Vamos entonces a crear un nuevo proyecto en VWD, que se llame "Controles" (por poner un nombre creativo) ;)
La plantilla que vamos a seleccionar es la de "Aplicación Web Vacía" dentro de las plantillas instaladas de Visual C# para Web
Vamos a agregar entonces un nuevo elemento (un nuevo formulario web) donde vamos a comenzar a trabajar con los controles de la caja de herramientas. Al nuevo formulario le pondremos como nombre Default.Aspx. Siempre que agreguemos un formulario nuevo a nuestra solución vacía, ese será el formulario de inicio del proyecto, así que no va a hacer falta setearlo como formulario de inicio. Además, casi todas las aplicaciones web tienen default.aspx como formulario de inicio, así que menos vamos a necesitar setearlo como formulario de inicio.
En este nuevo formulario que acabamos de agregar, vamos a agregar una nueva tabla.Presionamos F7 para que nos quede el formulario en modo "Diseño", posicionamos el cursor en el "div" que está dibujado y vamos al menú "Tabla", y de allí a "Insertar Tabla". Nos aparece el siguiente cuadro de diálogo:
Nuestra tabla tiene que tener 4 filas por dos columnas, de momento. Presionamos "Aceptar" y la tabla se inserta. Tomamos ahora con el cursor el divisor de las columnas y hacemos click y deslizamos hasta dejar de 160 píxeles de ancho. Luego ponemos en las filas las palabras "Nombre", "Apellido", y "Fecha de Nacimiento" y nuestro formulario quedará así:
Bien, ahora, en los casilleros de la derecha, agregaremos algunos controles: en primer lugar, vamos a agregar un Textbox en la primer fila, y vamos a cambiar su ID por "NombreTextBox", copiamos este textbox a la fila inmediata inferior y cambiamos su ID por "ApellidoTextBox". por último vamos a agregar un DropDownList (un combo desplegable) al que vamos a poner por ID ProvinciasDropDownList. Ahora, hacemos click en el smarttag (el signo de mayor a la derecha) del ProvinciasDropDownList y hacemos click en "Editar Items"
Usando el cuadro de diálogo, vamos a agregar varias provincias, las que más simpáticas les caigan:
Para comprender como funcionan cada uno de los listitems que se agregaron, vamos a poner en el texto Seleccionar, Salta, Buenos Aires, San Luis, San Juan, Mendoza, La Pampa, Córdoba y La Rioja y en el valor, para seleccionar queda vacío, y para las provincias, la letra del código postal de la provincia, respectivamente A, B, D, J, M, L, X, y F.
Ahora, vamos a ver un problemita que tiene el framework, una pavada, pero mejor arreglarlo: vamos a pasar a la vista de diseño, y ver los listitems que se generaron a partir de este cuadro de diálogo:
Nos queda precioso: pero cuando se genera el HTML el primer listitem (que no tiene Value) nos va a generar un option HTML que va a tener el mismo valor que el texto. Una pavada, pero para evitarlo, tenemos que poner en la definición asp:listitem Value="" dentro del signo mayor y menor.
Agregamos un label debajo de la tabla, y le cambiamos el ID por "ResultadoEtiqueta". Ya sé que los nombres quedan espantosos, pero hay que seguir la convención que agarramos al principio...
Bien: vamos a dar los últimos toques: seleccionamos las dos celdas de la última fila, hacemos click derecho con el mouse sobre las celdas ya seleccionadas y seleccionamos modificar>Fusionar Celdas. Teniendo esa celda única que se fusionó, vamos al menú de formato y ponemos "Centrar" en alineación ( o en propiedades de la celda, en Align "Center".
Ahora, a esta celda nueva, agregamos un botón, y a ese botón le vamos a poner como ID "BotonEnviar", y como Texto "Enviar".
Hacemos doble click en el botón, y nos vamos a la vista de CodeBehind donde vamos a escribir el código para que se ejecute en el servidor cada vez que hagamos click en el botón del lado del cliente (los botones por default generan un postback al servidor)
Agregamos el siguiente código:
¿Qué es lo que hace este código? Le asigna al texto ResultadosEtiqueta el valor del textbox de nombre, el de apellidos y el del item seleccionado del provinciasdropdownlist, concatenándolos con un espacio para separar nombre y apellidos y la provincia a la que pertenece.
Compilamos y corremos nuestro sitio, presionando Ctrl + F5, o en su defecto Ctrl + Shift + W.
Aparece nuestra página, escribimos nuestro nombre, apellido y provincia, y presionamos el botón y Voilá! tenemos una página funcional.
Vamos entonces a crear un nuevo proyecto en VWD, que se llame "Controles" (por poner un nombre creativo) ;)
La plantilla que vamos a seleccionar es la de "Aplicación Web Vacía" dentro de las plantillas instaladas de Visual C# para Web
Vamos a agregar entonces un nuevo elemento (un nuevo formulario web) donde vamos a comenzar a trabajar con los controles de la caja de herramientas. Al nuevo formulario le pondremos como nombre Default.Aspx. Siempre que agreguemos un formulario nuevo a nuestra solución vacía, ese será el formulario de inicio del proyecto, así que no va a hacer falta setearlo como formulario de inicio. Además, casi todas las aplicaciones web tienen default.aspx como formulario de inicio, así que menos vamos a necesitar setearlo como formulario de inicio.
Nuestra tabla tiene que tener 4 filas por dos columnas, de momento. Presionamos "Aceptar" y la tabla se inserta. Tomamos ahora con el cursor el divisor de las columnas y hacemos click y deslizamos hasta dejar de 160 píxeles de ancho. Luego ponemos en las filas las palabras "Nombre", "Apellido", y "Fecha de Nacimiento" y nuestro formulario quedará así:
Usando el cuadro de diálogo, vamos a agregar varias provincias, las que más simpáticas les caigan:
Para comprender como funcionan cada uno de los listitems que se agregaron, vamos a poner en el texto Seleccionar, Salta, Buenos Aires, San Luis, San Juan, Mendoza, La Pampa, Córdoba y La Rioja y en el valor, para seleccionar queda vacío, y para las provincias, la letra del código postal de la provincia, respectivamente A, B, D, J, M, L, X, y F.
Ahora, vamos a ver un problemita que tiene el framework, una pavada, pero mejor arreglarlo: vamos a pasar a la vista de diseño, y ver los listitems que se generaron a partir de este cuadro de diálogo:
Nos queda precioso: pero cuando se genera el HTML el primer listitem (que no tiene Value) nos va a generar un option HTML que va a tener el mismo valor que el texto. Una pavada, pero para evitarlo, tenemos que poner en la definición asp:listitem Value="" dentro del signo mayor y menor.
Agregamos un label debajo de la tabla, y le cambiamos el ID por "ResultadoEtiqueta". Ya sé que los nombres quedan espantosos, pero hay que seguir la convención que agarramos al principio...
Bien: vamos a dar los últimos toques: seleccionamos las dos celdas de la última fila, hacemos click derecho con el mouse sobre las celdas ya seleccionadas y seleccionamos modificar>Fusionar Celdas. Teniendo esa celda única que se fusionó, vamos al menú de formato y ponemos "Centrar" en alineación ( o en propiedades de la celda, en Align "Center".
Ahora, a esta celda nueva, agregamos un botón, y a ese botón le vamos a poner como ID "BotonEnviar", y como Texto "Enviar".
Hacemos doble click en el botón, y nos vamos a la vista de CodeBehind donde vamos a escribir el código para que se ejecute en el servidor cada vez que hagamos click en el botón del lado del cliente (los botones por default generan un postback al servidor)
Agregamos el siguiente código:
Compilamos y corremos nuestro sitio, presionando Ctrl + F5, o en su defecto Ctrl + Shift + W.
Aparece nuestra página, escribimos nuestro nombre, apellido y provincia, y presionamos el botón y Voilá! tenemos una página funcional.
martes, 10 de abril de 2012
Tutorial: Crear un sitio seguro en ASP.Net Web Forms. (Parte III)
Seguimos, luego de estas "cortitas vacaciones" con la configuración de seguridad del sitio.
¿Recuerdan que en la clase vimos un sitio web que nos servía para Configurar la seguridad? Podemos acceder a ese sitio de configuración desde la barra de herramientas del explorador de soluciones, así:
Hacemos click en ese botón y nos aparece el famoso sitio de configuración:
Vamos a hacer click en la pestaña de seguridad, para acceder a las opciones de configuración de seguridad.
Como nuestra aplicación no tiene seteada ninguna configuración de seguridad, nos da un mensaje que dice que la configuración de autenticación de nuestra aplicación es la de Windows (es la configuración por default, como vimos, la aplicación le cede al Internet Information Server la administración de permisos):
Si hacemos click en "seleccionar tipo de autenticación (o directamente en la pestaña "Proveedor" en el menú superior, vamos a acceder a la pantalla para seleccionar el tipo de proveedor:
En esta pantalla tenemos que seleccionar la opción "desde internet", porque la idea es que tengamos acceso a formularios web que nos permitan pasar nuestras credenciales de autenticación. Seleccionamos esa opción, presionamos el botón "Listo" y ya casi estamos.
Volvamos a la pantalla de seguridad: vamos a hacer click en la sección "Funciones", donde dice "Habilitar Roles" (no se pusieron de acuerdo con el nombre).
Vamos ahora a crear un nuevo usuario llamado "Administrador" con todas sus características, y tildamos en "funciones" la "función" "Administradores":
Hacemos click en "Crear Usuario" y volvemos a nuestro proyecto.
Veamos ahora qué pasó con nuestra aplicación con todas estas "modificaciones" que hicimos:
Hagamos click en el botón de "Ver todos los archivos" y luego en "Actualizar" (están arriba del explorador de soluciones)
Hagamos click derecho en la carpeta "App_Data" y luego click en la opción "Incluir en el proyecto". Luego, si hacemos doble click en el archivo "ASPNETDB.MDF", vamos a acceder al explorador de base de datos, y veremos el contenido de la base de datos. Hagamos Click derecho en la tabla "aspnet_Users" y veremos los datos (algunos encriptados) de nuestro usuario administrador recientemente creado:
Vamos por último al archivo web.config que está en la raíz de la aplicación:
¡Epa, epa, epa, ch'amigo, compadre! ¿Dónde está toda nuestra configuración de seguridad? Pasa que la aplicación toma la configuración de seguridad por defecto. Si la base de datos está dentro de App_data y se llama ASPNETDB.MDF, no hace falta definir una cadena de conexión. Pero además, el tag <authentication mode="forms"< está tomando todos los valores por defecto que tiene ese tag, que explícitamente serían:
En la próxima entrega vamos a desmenuzar un poquito estos valores, y a agregar todos los controles para agregar usuarios a nuestra aplicación.
¿Recuerdan que en la clase vimos un sitio web que nos servía para Configurar la seguridad? Podemos acceder a ese sitio de configuración desde la barra de herramientas del explorador de soluciones, así:
Vamos a hacer click en la pestaña de seguridad, para acceder a las opciones de configuración de seguridad.
Como nuestra aplicación no tiene seteada ninguna configuración de seguridad, nos da un mensaje que dice que la configuración de autenticación de nuestra aplicación es la de Windows (es la configuración por default, como vimos, la aplicación le cede al Internet Information Server la administración de permisos):
En esta pantalla tenemos que seleccionar la opción "desde internet", porque la idea es que tengamos acceso a formularios web que nos permitan pasar nuestras credenciales de autenticación. Seleccionamos esa opción, presionamos el botón "Listo" y ya casi estamos.
Volvamos a la pantalla de seguridad: vamos a hacer click en la sección "Funciones", donde dice "Habilitar Roles" (no se pusieron de acuerdo con el nombre).
una vez que están habilitadas, queda así
Hacemos click, en "Crear o administrar funciones" y creamos un rol "administradores"Vamos ahora a crear un nuevo usuario llamado "Administrador" con todas sus características, y tildamos en "funciones" la "función" "Administradores":
Hacemos click en "Crear Usuario" y volvemos a nuestro proyecto.
Veamos ahora qué pasó con nuestra aplicación con todas estas "modificaciones" que hicimos:
Hagamos click en el botón de "Ver todos los archivos" y luego en "Actualizar" (están arriba del explorador de soluciones)
Hagamos click derecho en la carpeta "App_Data" y luego click en la opción "Incluir en el proyecto". Luego, si hacemos doble click en el archivo "ASPNETDB.MDF", vamos a acceder al explorador de base de datos, y veremos el contenido de la base de datos. Hagamos Click derecho en la tabla "aspnet_Users" y veremos los datos (algunos encriptados) de nuestro usuario administrador recientemente creado:
Vamos por último al archivo web.config que está en la raíz de la aplicación:
<forms cookieless="UseDeviceProfile" defaulturl="default.aspx" domain="" enablecrossappredirects="false" loginurl="login.aspx" name=".ASPXAUTH" path="/" protection="All" requiressl="false" slidingexpiration="true" timeout="30"> <credentials passwordformat="SHA1"> </credentials></forms>
En la próxima entrega vamos a desmenuzar un poquito estos valores, y a agregar todos los controles para agregar usuarios a nuestra aplicación.
Suscribirse a:
Comentarios (Atom)







