Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Etiquetas:
o o o o o o o
Lo normal sera pensar que este grfico es un indicador de las habilidades necesarias en un futuro por un desarrollador web, pero la realidad es bien distinta aqu en Espaa, slo habra que darse una vuelta por algn portal de empleo y ver las habilidades que requieren las empresas... Por eso vamos a hacer un pequeo anlisis de los 8 lenguajes de programacin con ms demanda en el mercado espaol, este anlisis consta de 3 apartados: Qu es?, Por qu deberas aprenderlo?, Oferta de trabajo (Fuente:Infojobs)
1.PHP
Qu es?
PHP usa una mezcla entre interpretacin y compilacion para intentar ofrecer a los programadores la mejor mezcla entre rendimiento y flexibilidad. PHP compila para tu codigo una serie de instrucciones (llamadas opcodes) siempre que estas son accedidas. Estas instrucciones son entonces ejecutadas una por una hasta que el script termina. Esto es diferente a la manera convencional de compilacion de lenguajes como C++ donde el cdigo es compilado a cdigo ejecutable que es despues ejecutado. Php es recompilado cada vez que se solicita un script. Una ventaja importante de interpretar el cdigo es que toda la memoria usada por tu cdigo es manejada por PHP, y el lenguaje automticamente vaca esta memoria cuando el script finaliza. Esto significa que tu no tienes que preocuparte de las conexiones a la base de datos, porque PHP lo har por ti. leer ms
Oferta de trabajo
Demanda de trabajo: 362 ofertas
2.C#
Qu es?
C# es un lenguaje de propsito general orientado a objetos creado por Microsoft para su plataforma .NET. Su sintaxis bsica deriva de C/C++ y utiliza el modelo de objetos de la plataforma .NET el cual es similar al de Java aunque incluye mejoras derivadas de otros lenguajes. C# fue diseado para combinar el control a bajo nivel de lenguajes como C y la velocidad de programacin de lenguajes como Visual Basic.
Oferta de trabajo
Demanda de trabajo: 1.002 ofertas
3.AJAX
Qu es?
AJAX no es un lenguaje exactamente su nombre viene dado por el acrnimo de Asynchronous JavaScript And XML y es posiblemente la mayor novedad en cuanto a programacin web en estos ltimos aos. El corazn de Ajax es el objeto XMLHttpRequest que nos permite realizar una conexin al servidor y al enviarle una peticin y recibir la respuesta que procesaremos en nuestro cdigo Javascript, estamos hablando del verdadero motor de Ajax, por ejemplo gracias a este objeto podemos desde una pgina HTML leer datos de una web o enviar datos de un formulario sin necesidad de recargar la pgina. leer ms
Oferta de trabajo
Demanda de trabajo: 65 ofertas
4.JavaScript
Qu es?
Se trata de un lenguaje de programacin del lado del cliente, porque es el navegador el que soporta la carga de procesamiento. Gracias a su compatibilidad con la mayora de los navegadores modernos, es el lenguaje de programacin del lado del cliente ms utilizado.
Oferta de trabajo
Demanda de trabajo: 422 ofertas
5.Perl
Qu es?
Perl es la alternativa ms popular a PHP, seguramente porque es el lenguaje ms antiguo tambien dentro de las alternativas. En internet nos encontramos numerosos recursos que utilizan Perl, muchos de las aplicaciones "open source" requieren tener Perl instalado correctamente. Perl tiene una ventaja y es que es muy flexible, y tambien tiene un gran cantidad de modulos ya escritos. Bien escritos los scripts en Perl se asemejan bastante a PHP. La principal causa de la suca apariencia de Perl es por la aficin de sus desarrolladores a la escritura en "una lnea" empaquetanto numerosas funcionalidades en una sola lnea de cdigo. leer ms
Oferta de trabajo
6.C
Qu es?
Es un lenguaje de "medio nivel" pero con numerosas caractersticas de bajo nivel. Dispone de las estructuras tpicas de los lenguajes de alto nivel pero, a su vez, dispone de construcciones del lenguaje que permiten un control a muy bajo nivel.
Oferta de trabajo
Demanda de trabajo: 312 ofertas
Oferta de trabajo
Demanda de trabajo: 5 ofertas
8.ASP
Qu es?
Active Server Pages (ASP) y ASP.NET es un intendo de Microsoft para introducirse en el mercado del desarrollo Web, y viene a ser como su estandar para su servidor Web, ISS. Asp ha sido atacado por la comunidad open source desde que este apareci, y dan numerosas razones para ello: El propietario, una nica plataforma, la lentitud... Me gustara decir "Si, si, y si", pero no me debo dejar llevar. La realidad es que ASP ha sido implementado en otras plataformas y que cuando esta funcionando bajo su servidor predeterminado IIS es relativamente rpido. leer ms
Oferta de trabajo
Demanda de trabajo: 557 ofertas Seccion Programacin (TuFuncin) Tutorial bsocp de AJAX Diferencia entre PHP ASP y otros lenguajes de programacin Fcil sistema de autentificacin de usuarios (PHP) Tendencia de los lenguajes de programacin Bases de datos y PHP Consejos para escribir cdigo Javascript
Perl est muriendo 10 Programming Languages You Should Learn Right Now
Enlaces Relacionados
Migra de Php a Perl o viceversa Grandes webs que utilizan Php Hola Mundo! Zend Studio Cmo ordenar datos? CSS Color Generator Obteniendo rutas en Php Test de algunas funciones Php Consejos para agilizar la carga de tu pgina XML y PHP 5
Primeros Pasos Introduccin Principales herramientas Su primera pgina ASP.NET Crear una nueva pgina ASP.NET Construir una pgina "hola mundo" con ASP.NET Ejecutar pginas con el Servidor Web incorporado Aadir un Rich Calendar Web Control Ejecutar pginas con el Servidor Web IIS Usar la Galera de Controles en Lnea Creando una Base de Datos Conectarse a un Servidor de Base de Datos Crear una nueva Base de Datos Crear una nueva tabla Editar datos en una tabla Desconectarse de la Base de Datos Conectarse a una Base de Datos existente Pginas ASP.NET con Datos Mostrar datos con MxDataGrid Dar formato al MxDataGrid Usar el Data Code Builder Dar formato al DataGrid Plantillas y DataList DropDownList Code Builder Servicios Web XML con ASP.NET Crear un nuevo Servicio Web XML
WebMethod 'Subtract' WebMethod de acceso a datos Crear un cliente de Servicios Web Desarrollo mvil con ASP.NET Crear una nueva pgina para dispositivos mviles Aadir Mobile Controls Probar pginas para dispositivos mviles Hosting ISP/FTP Conectarse a un proveedor de hosting Modificar una pgina ASP.NET remota Desconectarse del proveedor de hosting Ayuda y Comunidad Archivos de plantilla Comunidad Bsqueda My Snippets Class Browser Construir una Aplicacin de Punta-a-Punta Acerca de la Aplicacin Crear la tabla 'Users' Introducir datos del usuario Crear una pgina Master/Details Crear una pgina de Login Crear un archivo Web.Config Crear la pgina de Registro Ejecutar la Aplicacin Temas Avanzados Preferencias del usuario
Primeros Pasos
Introduccin
Bienvenido al Tour Guiado de ASP.NET Web Matrix
El Tour Guiado de ASP.NET Web Matrix es un tutorial diseado para familiarizar rpidamente al desarrollador con la sintaxis, la arquitectura y el poder del entorno de desarrollo de ASP.NET Web. ste est planteado paso a paso e incluye comentarios de soporte para facilitar el seguimiento y comprensin de mismo. As tambin provee diferentes ejemplos, los que estn diseados para ser cortos y fciles de entender, ilustrando las caractersticas de Web Matrix. A su disposicin, tambin se encuentra un foro de discusin de ASP.NET Web Matrix (localizado en www.asp.net) para esclarecer las dudas que se tengan respecto a ste.
Primeros Pasos
Principales Herramientas de ASP.NET Web Matrix
La siguiente pantalla muestra a ASP.NET Web Matrix en ejecucin y resalta mediante un crculo rojo las distribuciones de las herramientas ms importantes con la cuales usted debe familiarizarse.
ID Nombre Descripcin
Menu Bar El Menu Bar (Barra de Men) de ASP.NET Web Matrix, es el rea sealada en la parte superior de la ventana principal de ASP.NET Web Matrix directamente a continuacin de la barra de ttulo. El Menu Bar incluye un conjunto de ttulos de men, los cuales proveen acceso a opciones compuestas por una coleccin de tems u opciones. Los mens muestran una lista de comandos disponibles para el usuario. Estos son distintos tipos de mens, incluyendo desplegables, de acceso rpido y en cascada. Cuando usted mueve el puntero sobre el ttulo del men y hace clic con el botn primario del mouse, el mismo es resaltado y la lista de opciones asociada aparece. Cuando mueve el puntero sobre la opcin del men, el men sigue el movimiento del puntero, resaltando cada opcin que es pasada por el puntero del mouse. Para seleccionar el comando asociado con la opcin, mueva el puntero sobre la opcin y haga clic con el botn primario del mouse. La lista de opciones se cerrar. Usted tambin accede a la lista de opciones presionando la tecla ALT (o F10) que activa el Menu Bar. Cuando presiona una tecla alfanumrica, mientras mantiene presionada la tecla ALT, o despus que la tecla ALT es soltada, el ASP.NET Web Matrix muestra la lista de opciones que corresponde con la tecla de acceso alfanumrica presionada. Note que la correspondencia no es sensible a maysculas o minsculas.
Standard Toolbar El Standard Toolbar (barra de herramientas estndar) de ASP.NET Web Matrix es el rea que se encuentra en la parte superior de la ventana principal, directamente a continuacin del Menu Bar. Un toolbar es un panel que contiene un conjunto de controles, diseado para proveer acceso rpido y directo a comandos u opciones especficas.
Usted puede acceder a los controles incluidos en el toolbar usando el mouse o teclas de acceso.
Toolbox El Toolbox (caja de herramientas) es el rea mostrada en la parte izquierda de la ventana principal de ASP.NET Web Matrix, directamente a continuacin de la ventana Document (Documento). Las opciones disponibles del Toolbox cambian dependiendo de la pgina de diseos que se est usando. Un toolbox es un panel que contiene un conjunto de controles y herramientas que usted usa mientras disea su aplicacin Web. Cada conjunto de controls y herramientas es funcionalmente organizada en solapas separadas dentro del Toolbox. Usted puede seleccionar y arrastrar opciones, texto y controles del Toolbox en formularios, pginas y diseadores, y arrastrar opciones de ese origen, al Toolbox para ser usado despus. Por ejemplo, usted puede arrastrar un control Button de la solapa HTML a una pgina Web, o seleccionar y arrastrar fragmentos de cdigo de la ventana Document y almacenarlo en la solapa My Snippets.
Document Window El Document Window (Ventana de Documento) de ASP.NET Web Matrix es el rea que se encuentra enmedio de la ventana principal, entre el Toolbox y el Workspace, y Properties Window. El Document Window se crea en forma dinmica cuando usted abre o crea un archivo. La lista de los documentos abiertos aparece en el men Windows, con la ltima ventana, listada primero. El Document Window tiene una interfaz de solapa, que le proporciona un punto de simple acceso para cuatro vistas diferentes de archivo: Design, HTML, Code y All (fusin de las solapas HTML y Code). Estas vistas (solapas) estn en Document Windows y cambian dependiendo de que la pgina de diseo se est usando.
Workspace Window El Workspace Window (Espacio de Trabajo) de ASP.NET Web Matrix es el rea resaltada en la parte superior derecha de la ventana principal, directamente a continuacin del Properties Window. El Workspace Window provee una organizacin de vistas a los archivos del sistema y a los archivos abiertos, asi como tambin un acceso listo a MSDE y al almacn de datos SQL. El Workspace Window sirve para navegar y abrir archivos en ASP.NET Web Matrix. Tambin se puede utilizar para conectarse con MSDE y SQL Server, manipular datos, y mantener tablas y procedimientos almacenados.
Properties Window El Properties Window (Ventana de Propiedades) de ASP.NET Web Matrix es el rea que se indica en la parte inferior derecha de la ventana principal, directamente a continuacin del Workspace Window. Las propiedades definen el estado, comportamiento y apariencia de la pgina ASP.NET, de documentos o controles. La mayora de los controles grficos contienen propiedades que pueden ser cambiadas para definir su apariencia visual. Controles, documentos y pginas ASP.NET pueden exponer tambin propiedades que especifican cmo van a interactuar con el usuario y la informacin que necesitan para operar en tiempo de ejecucin. El Properties Window muestra diferentes tipos de campos de edicin, dependiendo de la necesidad particular de la propiedad. Estos campos de edicin incluyen cajas de edicin, listas desplegables, y links a cuadros de dilogo de edicin personalizados. Las propiedades mostradas grisadas son solo de lectura. Con el Properties Window se pueden ver y cambiar las propiedades en tiempo de diseo y tambien los eventos de los objetos seleccionados que estn localizados en editores y diseadores. Tambin es til para
ver y buscar los Assemblies .NET o acceder a la Comunidad Online para buscar ayuda.
Siguiente Paso >>
1. 2. 3. 4. 5. 6. 7.
Abra Microsoft ASP.NET Web Matrix, y ver aparecer el cuadro de dialogo New File. Seleccione (General) del panel Templates. Seleccione la plantilla ASP.NET Page. Escriba la ruta de archivo (path) en el cuadro Location. Escriba myFirstPage.aspx en el cuadro Filename. Seleccione Visual Basic en el cuadro desplegable Language. Haga click en OK. Ventana de dilogo New File:
8.
1.
De la solapa Web Controls en el Toolbox (sobre la mano izquierda de la herramienta), arrastre un control Label, un control TextBox y un control Button sobre la pgina ASP.NET. Entre las colocaciones de cada control, presione la tecla Enter.
2.
Seleccione la solapa HTML, ubicada debajo del Document Window, para ver el HTML que ASP.NET Web Matrix gener, como resultado de las tres operaciones anteriores. Usted puede modificar el contenido de la pgina html, usando la solapa de diseo grfico (similar como lo hizo en el paso anterior) o directamente editando el contenido con la solapa HTML o la solapa All.
<html> <head> </head> <body> <form runat="server"> <p> <asp:Label id="Label1" runat="server">Label </asp:Label> </p> <p> <asp:TextBox id="TextBox1" runat="server"> </asp:TextBox> </p> <p> <asp:Button id="Button1" onclick="Button1_Click" runat="server" Text="Button"> </asp:Button> </p> </form> </body> </html>
3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.
23. Seleccione la solapa Design y haga doble clic en el control Button. ASP.NET Web Matrix automticamente generar un mtodo que manipula el evento ASP.NET del lado del servidor (llamado "Button1_Click"), para el evento Click del control Button. As mismo abre la pgina en vista Code. 24. Aada el cdigo que se muestra a continuacin en rojo, al mtodo Button1_Click para actualizar la propiedad Text del control Label. Esto permite que se despliegue un mensaje de bienvenida personalizado, usando el valor introducido en el TextBox:
25. Sub Button1_Click(sender As Object, e As EventArgs) 26. Label1.Text = "Hello " & TextBox1.Text & " welcome to the ASP.NET Web Matrix Project!" End Sub
27. Opcionalmente, seleccione la solapa All para ver todo el contenido de la pgina ASP.NET. Esto incluye ambas secciones de la pgina, html y cdigo, y proporciona una vista conveniente que permite ver el cdigo/contenido completo de la pgina:
28. <%@ Page Language="VB" %> 29. 30. <script runat="server"> 31. 32. Sub Button1_Click(sender As Object, e As EventArgs) 33. 34. Label1.Text = "Hello, " & TextBox1.Text & "! Welcome to the ASP.NET Web Matrix Project" 35. 36. End Sub 37. 38. </script> 39. 40. <html> 41. 42. <body> 43. <form runat="server"> 44. <p> 45. <asp:Label id="Label1" runat="server">Label 46. </asp:Label> 47. </p> 48. <p> 49. <asp:TextBox id="TextBox1" runat="server"> 50. </asp:TextBox> 51. </p> 52. <p> 53. <asp:Button id="Button1" onclick="Button1_Click" runat="server" Text="Button"> 54. </asp:Button> 55. </p> 56. </form> 57. </body> 58. </html>
Ya termin de construir una pgina simple "hello world" ASP.NET. En la siguiente seccin encontrar una serie de pasos para ejecutar la pgina en un Servidor Web.
Siguiente Paso >>
1.
Grabe la pgina ASP.NET. Hay dos formas de grabar un archivo en el entorno de desarrollo de ASP.NET Web Matrix: a. Seleccionando Save del men File.
b.
2.
Ejecute la pgina ASP.NET. Hay tres formas de ejecutar una pgina en el entorno de desarrollo de ASP.NET Web Matrix: a. Seleccionando Start en el men View.
b.
c.
3.
Seleccionando cualquiera de las formas anteriormente citadas se abrir el cuadro de dilogo Start Web Application:
4. 5.
Haga clic en la opcin Use ASP.NET Web Matrix Server y Escriba 8080 en el cuadro Application Port. Haga clic en el botn Start.
6.
El ASP.NET Web Matrix Server iniciar y aparecer un cono en el system tray (bandeja de sistema).
Nota El cuadro de dilogo Start Web Application y el cono system tray ASP.NET Web Matrix Server de notificacin, aparecen la primera vez que usted ejecuta la pgina. En las subsecuentes ejecuciones de pgina, ASP.NET Web Matrix va usar el Servidor Web que ha sido especificado la primera vez que se ejecut la pgina. ASP.NET Web Matrix no va preguntar por el Servidor Web nuevamente, hasta que cierre y reabra el entorno de desarrollo de ASP.NET Web Matrix y ejecute la pgina otra vez, o detenga manualmente y arranque el ASP.NET Web Matrix Server. 7. Dado que la pgina ASP.NET que desarroll en la seccin anterior no aparecer automticamente en una nueva
instancia de su Explorador Web, Escriba un nombre en el TextBox y Haga clic en el Button. El nombre aparecer en el Label con el mensaje de bienvenida.
8.
1. 2. 3.
Abra el archivo myFirstPage.aspx. Seleccione la solapa Design para ver la vista en modo diseo. De la solapa Web Controls en el Toolbox, arrastre el control Calendar a la pgina ASP.NET, entre el control TextBox y el control Button.
Nota El control Calendar muestra un solo mes del calendario, permitiendo al usuario seleccionar fechas y moverse al siguiente o anterior mes. Este control es ms avanzado porque usted puede personalizar la apariencia del control Calendar, configurando las propiedades que controlan el estilo de las diferentes partes del control, incluyendo el contenido y el formato. En tiempo de ejecucin, esto emite salidas html estndar, asegurando cualquier cliente browser (IE, Netscape, Opera, etc).
4. 5.
Seleccione el control Calendar con su mouse. Haga clic en el link Auto Format en la parte inferior de la ventana Properties (abajo, a mano izquierda de la herramienta).
6.
El cuadro de dilogo Calendar Auto Format aparecer. Este cuadro de dilogo permite que seleccione, de un conjunto predefinido de colores, estilos de borde y otras configuraciones (referido como scheme o esquema) y aplicar stos al control Calendar.
7.
Seleccione la opcin Simple en el scheme ListBox. Cuando se selecciona un esquema, las configuraciones del mismo son aplicadas a las propiedades del control. Note que la vista previa del Calendar mostrar el esquema aplicado.
8. 9.
Haga clic en OK para seleccionar el esquema "Simple". Seleccione la solapa HTML para mostrar la pgina en vista HTML.
Nota El diseo de esquema del control Calendar es persistente, as como el conjunto de propiedades HTML configuradas. Estas propiedades se pueden actualizar manualmente en futuras personalizaciones de estilo de los controles. Tambin se pueden intercambiar la solapa diseo, y usar la grilla para modificar individualmente esas propiedades. <asp:Calendar id="Calendar1" runat="server" BackColor="White" Width="200px" DayNameFormat="FirstLetter" ForeColor="Black" Height="180px" Font-Size="8pt" Font-Names="Verdana" BorderColor="#999999" CellPadding="4"> <TodayDayStyle forecolor="Black" backcolor="#CCCCCC"> </TodayDayStyle> <SelectorStyle backcolor="#CCCCCC"> </SelectorStyle> <NextPrevStyle verticalalign="Bottom"> </NextPrevStyle> <DayHeaderStyle font-size="7pt" font-bold="True" backcolor="#CCCCCC"> </DayHeaderStyle> <SelectedDayStyle
font-bold="True" forecolor="White" backcolor="#666666"> </SelectedDayStyle> <TitleStyle font-bold="True" bordercolor="Black" backcolor="#999999"></TitleStyle> <WeekendDayStyle backcolor="#FFFFCC"> </WeekendDayStyle> <OtherMonthDayStyle forecolor="Gray"> </OtherMonthDayStyle> </asp:Calendar>
10. Seleccione la solapa Design y haga doble clic en el control Button. ASP.NET Web Matrix abrir la vista Code con el mtodo Button1_Click. 11. Actualice el cdigo del mtodo Button1_Click para que el control Label incluya la fecha seleccionada en el control Calendar:
12. Sub Button1_Click(sender As Object, e As EventArgs) 13. Label1.Text = "Hello " & TextBox1.Text & " you selected: " & Calendar1.SelectedDate End Sub
14. Guarde y ejecute la pgina, usando el botn start o presionando F5. 15. Su pgina ASP.NET aparecer automticamente en una nueva instancia de su Explorador Web. Note que, el Calendar ahora implementar la opcin de formato esquema Simple. Haga clic en una fecha sobre el Calendar, Escriba un nombre en el TextBox y haga clic en el Button. El nombre y la fecha aparecern en el mensaje de bienvenida en el Label.
Nota El ASP.NET Web Matrix Web Server ya se est ejecutando. Por lo tanto, el cuadro de dilogo Start Web Application no aparecer ejecutndose. ASP.NET Web Matrix usar el Web Server que fue especificado la primera vez que se ejecut la pgina. ASP.NET Web Matrix no preguntar por un especfico Web Server hasta que usted cierre y reabra el entorno de desarrollo ASP.NET Web Matrix, y ejecute la pgina nuevamente o cierre manualmente y reinicie el Servidor Web.
1.
Primero cierre el ASP.NET Web Matrix Web Server. Presionando el botn derecho sobre el cono en la bandeja de entrada ASP.NET Web Matrix Web Server (abajo, a mano derecha de su ventana de escritorio) y seleccionando Stop.
2.
Ejecute de nuevo la pgina ASP.NET, presionando el botn start o presionando F5 y aparecer el cuadro de dilogo Start Web Application:
3. 4. 5. 6. 7.
Haga clic en la opcin Use a new IIS Vitual Root. Escriba MatrixTour en la caja Application Name. No seleccione el check box Enable Directory Browsing (predeterminado). Haga click en Start. ASP.NET Web Matrix crear un nuevo Directorio Virtual de IIS llamado MatrixTour y su pgina ASP.NET aparecer automticamente en una nueva instancia de su Explorador Web.
Note que al igual que la opcin de Web deployment de ASP.NET Web Matrix, no se muestra el icono en la bandeja del sistema o notificacin de mensaje, cuando una pgina es instalada (deployed) va la opcin IIS Web Server. Para modificar la configuracin del Servidor Web, use la herramienta IIS Administration o elimine el directorio virtual que ha creado. Importante: ASP.NET Web Matrix no preguntar para especificar un Servidor Web nuevamente hasta que usted cierre y abra de nuevo el entorno de desarrollo de ASP.NET Web Matrix, volviendo a ejecutar la pgina.
8.
1. 2. 3. 4. 5. 6. 7.
Abra ASP.NET Web Matrix y ver el cuadro de dilogo New File. Seleccione (General) del panel Templates. Seleccione la plantilla ASP.NET Page. Escriba la ruta del archivo en el cuadro Location. Escriba myFirstCustomPage.aspx en el cuadro Filename. Seleccione Visual Basic en la lista desplegable Language. Haga clic en OK y el archivo myFirstCustomPage.aspx se abrir en vista Design.
8. 9.
Haga clic en la solapa Custom Controls del Toolbox, ubicado sobre a la izquierda de la herramienta. Haga clic con el botn secundario sobre el Toolbox para aadir un control personalizado. Puede agregar controles personalizados, buscando en la estacin de trabajo local o en la Online Component Gallery.
10. Seleccione la opcin Add Online Toolbox Components y aparecer el cuadro de dilogo Component Gallery. El contenido de este cuadro de dilogo es llenado por un XML Web Service que se ejecuta en el website www.asp.net.
11. Usted puede buscar componentes en la Online Component Gallery por Category (predeterminado) o por Keyword (palabra clave). 12. Seleccione el tem Data & XML Controls en la lista Categories y se presentar el Data & XML Controls como resultado en la grilla. 13. Seleccione el control XMLEditGrid en la grilla de resultados y ver aparecer una descripcin. El control XMLEditGrid enlaza un archivo XML con un DataGrid.
14. Haga clic en Install. 15. ASP.NET Web Matrix le har una pregunta en la caja de dilogo. Haga clic en Yes para instalar en lnea el componte en el Global Assembly Cache (GAC).
16. Luego aparecer el XMLEditGrid en la caja de herramientas Custom Controls. Este server control fue cargado e instalado en su mquina, para permitir su uso en cualquier pgina ASP.NET.
17. Arrastre el control XMLEditGrid en la pgina ASP.NET, desde la solapa de Custom Controls en el Toolbox.
18. Cree un nuevo archivo XML para enlazarlo con el XMLEditGrid: a. b. c. d. e. Seleccione New del men File. Seleccione (General) del panel Templates. Seleccione la plantilla XML File. Escriba la ruta de acceso de archivo en el cuadro Location. Escriba myFirstXMLFile.xml en el cuadro Filename.
Nota La extensin del archivo de la pgina ASP.NET es aspx. La extensin del archivo para un XML es xml.
f.
g.
h. <Orders> i. <Order> j. <ID>1</ID> k. <OrderDate>4/23/2002</OrderDate> l. <CustomerName>Bob Smith</CustomerName> m. </Order> n. <Order> o. <ID>2</ID> p. <OrderDate>5/12/2002</OrderDate> q. <CustomerName>Sally Jones</CustomerName> r. </Order> s. </Orders>
t. 2. 3. 4.
Seleccione la solapa Design de la pgina ASP.NET y seleccione el control XMLEditGrid. Seleccione la propiedad XMLFile en la ventana Properties. Cambie la propiedad XMLFile del XMLEditGrid a myFirstXMLFile.xml. Esta propiedad liga el archivo XML con el XMLEditGrid.
5. 6.
Seleccione el control XMLEditGrid. Haga click en el link Auto Format, en la parte inferior de la ventana Properties.
7.
El cuadro de dilogo XMLEditGrid Auto Format aparecer. ste permite seleccionar un conjunto predefinido de colores, estilos de borde y otras configuraciones referidas a un esquema y aplicar stos al control XMLEditGrid. Seleccione la opcin Simple 1 en la lista de esquemas y la configuracin de stos se aplicara aplicada a las propiedades del control. Note que la vista previa muestra como se ver el XMLEditGrid con el esquema aplicado. Haga clic en OK.
8.
9.
10. Guarde y ejecute la pgina ASP.NET. 11. Su pgina ASP.NET aparecer automticamente en una nueva instancia de su Explorador Web. El XMLEditGrid muestra cada uno de los nodos Order en el archivo myFirstXMLFile.xml.
12. Haga clic en el link Add new item. 13. Aparecer un nuevo registro al final del XMLEditGrid. 14. Escriba 3 en la columna ID, 6/1/2002 en la columna OrderDate, y John Doe en la columna CustomerName. 15. Haga clic en el botn Save New Item. Esta operacin grabar el contenido de la edicin en el archivo XML
sobre su Servidor Web. Note que esta operacin requiere permisos en el web server para escribir un archivo (si no los tiene, ocurrir una excepcin cuando presione el botn grabar). De manera predeterminada las aplicaciones ASP.NET se ejecutan bajo IIS y no tienen permisos para escribir archivos (en este caso se necesita conceder explcitamente a la cuenta "ASPNET", acceso de escritura a archivos).
16. Abra el archivo myFirstXMLFile.xml. 17. Ver un nuevo registro con OrderID de 3 en el archivo XML:
18. <?xml version="1.0" encoding="utf-8" ?> 19. <Orders> 20. <Order> 21. <ID>1</ID> 22. <OrderDate>4/23/2002</OrderDate> 23. <CustomerName>Bob Smith</CustomerName> 24. </Order> 25. <Order> 26. <ID>2</ID> 27. <OrderDate>5/12/2002</OrderDate> 28. <CustomerName>Sally Jones</CustomerName> 29. </Order> 30. <Order> 31. <ID>3</ID> 32. <OrderDate>6/1/2002</OrderDate> 33. <CustomerName>John Doe</CustomerName> 34. </Order> 35. </Orders>
Diseado para ejecutarse en segundo plano, MSDE no tiene su propia interfaz de usuario (UI) o herramientas. La interaccin con MSDE es a travs del entorno de desarrollo de ASP.NET Web Matrix. En esta serie de pasos, usted se conectar a una instalacin local de MSDE. Para ello.
1.
Nota Si usted no tiene componentes SQL instalados localmente, ASP.NET Web Matrix mostrar mensajes de informacin y enlaces en los que usted puede hacer clic para descargar e instalar una copia gratuita de MSDE. Descargue e instale MSDE, si es necesario.
2.
3. 4. 5.
El cuadro de dilogo Connect to Database aparecer. Escriba localhost en el cuadro Server (predeterminado). Haga clic en el botn de eleccin Windows authentication.
Nota Solo si su configuracin de SQL Server requiere autentificacin, haga clic en el botn SQL Server authentication y escriba una cuenta de SQL Server vlida en los cuadros User name y Password.
1. 2.
Complete la serie de pasos titulada Connect to a new data source. Haga clic en el enlace Create a new database ubicado en la parte inferior del cuadro de dilogo Connect to Database.
3.
Ver aparecer el cuadro de dilogo Enter Information. Escriba Orders en el cuadro de base de datos y haga clic en OK.
4.
ASP.NET Web Matrix crear una nueva base de datos Orders. Aparecer una vista de rbol en la ventana Workspace que contiene un nodo padre llamado localhost.Orders. Este nodo contiene dos nodos hijos: uno llamado Tables y otro llamado Stored Procedures.
1.
Haga clic en el nodo Tables del rbol de la ventana Data y luego haga clic en el botn New Item en el toolbar de la ventana Data.
2. 3. 4. 5. 6. 7. 8.
Aparecer el cuadro de dilogo Create New Table. Escriba Orders en el cuadro Table Name. Haga clic en el botn New de la parte Columns en el cuadro de dilogo. Escriba OrderID en el cuadro Name de la parte Column Properties en el cuadro de dilogo. Seleccione Int en la lista Data Type. Seleccione el cuadro de verificacin Required y los cuadros de verificacin Primary Key y Autoincrement. Haga clic en New para seguir aadiendo columnas.
9.
Agregue una segunda columna en la tabla Orders llamada OrderDate con las siguientes propiedades: Name: OrderDate Data Type: DateTime Required: True (checked) Primary Key: False (unchecked)
10. Agregue una tercera columna en la tabla Orders llamada CustomerName con la siguientes propiedades: Name: CustomerName Data Type: VarChar Required: True (checked) Primary Key: False (unchecked) Field Size: 50 (default) 11. Haga click en OK para grabar la tabla Orders en la base de datos Orders.
12. La tabla Orders aparecer como un nodo hijo de Tables en la ventana Data.
13. Haga clic en el nodo Tables del rbol y luego en el botn New Item en el toolbar de la ventana Data. Agregue una segunda tabla en la base de datos Orders llamada OrderDetails. 14. Aada una columna de clave primaria para la tabla OrderDetails llamada OrderDetailID con las siguientes propiedades: Name: OrderDetailID Data Type: Int
Required: True (checked) Primary Key: True (checked) Auto-increment: True (checked) 15. Agregue una segunda columna en la tabla OrderDetails llamada OrderID con las siguientes propiedades: Name: OrderID Data Type: Int Required: True (checked) Primary Key: False (unchecked) Auto-increment: False (unchecked) 16. Aada una tercera columna en la tabla OrderDetails llamada ProductName con las siguientes propiedades: Name: ProductName Data Type: VarChar Required: True (checked) Primary Key: False (unchecked) Field Size: 50 (default) 17. Agregue una cuarta columna en la tabla OrderDetails llamada Quantity con las siguientes propiedades: Name: Quantity Data Type: Int Required: True (checked) Primary Key: False (unchecked) Auto-increment: False (unchecked) 18. Aada una cuarta columna en la tabla OrderDetails llamada UnitPrice con las siguientes propiedades: Name: UnitPrice Data Type: Money Required: True (checked) Primary Key: False (unchecked) 19. Haga clic en OK para grabar la tabla OrderDetails en la base de datos Orders.
20. La tabla OrderDetails aparecer como nodo hijo de Tables en la ventana Data.
1.
Para editar de la tabla Orders, existen dos formas de hacerlo en el entorno de desarrollo ASP.NET Web Matrix: a. Hacer clic en el botn Edit del toolbar en la ventana Data.
b. 2.
Entonces aparecer el cuadro de dilogo Edit Table. ste muestra un data grid que contiene los datos de la tabla. Las modificaciones que usted haga en la grilla Edit Table son hechas directamente en la base de datos. Aada dos nuevos registros en la tabla Orders. Nota Presione la tecla Enter o seleccione un registro diferente en la grilla de datos para que se genere un nuevo registro en la base de datos.
3.
Nota La columna OrderID es configurada para incrementarse automticamente, iniciando en 1 con incrementos de 1. De esta manera, cuando un nuevo registro se escriba, la base de datos automticamente y asignar el valor siguiente para el campo auto-incremento. Nota Los valores de los campos auto incremento son solo de lectura en el la grilla del cuadro Edit Table, y tienen un valor negativo hasta que un registro nuevo se aada a la base de datos. Nota Haciendo clic en el enlace Edit/View Table Design, que est debajo del cuadro de dilogo Edit Table, se puede ver la definicin de la tabla mientras est en modo de edicin. Si hay datos en la tabla, no se podr editar la definicin.
4. 5. 6.
Haga clic en Close. Edite la tabla OrderDetails. Aada de dos a cuatro registros para la tabla OrderDetails, para cada dato de la tabla Orders.
7.
1. 2. 3.
Haga clic en la solapa Data de la ventana Workspace. Haga clic en el nodo padre, llamado localhost.Orders en el rbol de la ventana Data. Haga clic en el botn Close Connection del toolbar de la ventana Data.
Nota: El botn Close Connection est deshabilitado hasta que seleccione el nodo server en el rbol de la ventana Data.
1. 2.
Haga clic en la solapa Data de la ventana Workspace. Haga clic en el botn New Connection del toolbar de la ventana Data.
3.
4. 5. 6.
Escriba localhost en el cuadro Server. Haga clic en el botn de opcin Windows authentication. Haga clic en la lista Database. ASP.NET Web Matrix se conectar al origen de datos y llenar la lista Database. Seleccione la base de datos Orders. Haga clic en OK. Ver un vista de rbol en la ventana Data que contiene un nodo padre llamado localhost.Orders. El nodo padre contiene dos nodos hijos: uno llamado Tables y el otro llamado Stored Procedures.
7. 8.
1. 2. 3. 4. 5. 6. 7.
Seleccione File->New para obtener el cuadro de dilogo "New File". Seleccione (General) del panel Templates. Seleccione la plantilla ASP.NET Page. Escriba una ruta de acceso de archivo en el cuadro Location. Escriba myFirstDataGrid.aspx en el cuadro Filename. Seleccione Visual Basic en la lista desplegable Language. Haga click en OK.
8. 9.
El archivo myFirstDataGrid.aspx se abrir en la vista Design. Escriba "Orders Listing" en la pgina y presione la tecla Enter para insertar un espacio en vaco.
11. Conctese a la base de datos Orders que desarroll en secciones anteriores . 12. Seleccione la tabla Orders en el nodo Tables de la vista de rbol de Data. 13. Arrastre la tabla Orders en la pgina ASP.NET. 14. Ver aparecer un SQLDataSourceControl y un MXDataGrid en la pgina ASP.NET.
Nota ASP.NET Web Matrix coloca propiedades automticamente para el SQLDataSourceControl, basndose en la informacin de conexin que se especific cuando se conect a la base de datos. Nota ASP.NET Web Matrix liga automticamente el MXDataGrid con el SQLDataSourceControl.
15. Guarde y ejecute la pgina ASP.NET. 16. Su pgina ASP.NET aparecer automticamente en una nueva instancia de su Explorador Web. El MXDataGrid muestra todos los registros de la tabla Orders. Si tiene ms de 10 registros en la base de datos, entonces el MXDataGrid activar la paginacin para que soporte solo 10 registros al mismo tiempo (y agregar links de navegacin para que el usuario pase de atrs hacia adelante en la tabla).
1. 2. 3. 4.
Abra el archivo myFirstDataGrid.aspx en vista Design. Seleccione el control MXDataGrid. Seleccione la propiedad AllowPaging en la ventana Properties. Ponga la propiedad AllowPaging del MXDataGrid a False. Esta propiedad, fija la funcionalidad de pginacin del MXDataGrid.
5.
6.
7. 8.
Cambie la propiedad HeaderText de la columna OrderID de OrderID a ID. Haga clic en OK.
9.
10. Su pgina ASP.NET aparecer automticamente en una nueva instancia de su Explorador Web. Note que la cabecera de la primera columna es ID y el nmero de pgina no aparecer en la parte inferior del MXDataGrid.
1. 2. 3. 4. 5. 6. 7.
Seleccione File->New para obtener el cuadro de dilogo "New File". Seleccione (General) del panel Templates. Seleccione la plantilla ASP.NET Page. Escriba una ruta de acceso de archivo en el cuadro Location. Escriba myFirstDataPage.aspx en el cuadro Filename. Seleccione Visual Basic en la lista desplegable Language. Haga clic en OK.
8. 9.
El archivo myFirstDataPage.aspx se abrir en vista Design. Desde la solapa Web Controls en el Toolbox (ubicada sobre el lado izquierdo de la herramienta), arrastre un control TextBox, un control DataGrid y un control Button a la pgina ASP.NET. Presione la tecla Enter entre cada asentamiento de control.
10. Seleccione la solapa Code. 11. De la solapa Code Builders en el Toolbox, arrastre un SELECT Data Method Code Builder sobre la pgina ASP.NET.
13. Escriba localhost en el cuadro Server (predeterminado). 14. Haga clic en el bton de opcin Windows authentication. 15. Haga clic en la lista desplegable Database. ASP.NET Web Matrix se conectar al origen de datos y llenar la lista Database con nombres de bases de datos. Seleccione la base de datos Orders que desarroll en las secciones anteriores.
16. Haga clic en OK. 17. Ver el primer paso de Code Builder Wizard, el cual es llamado Construct SELECT Query.
18. Seleccione en la lista Tables OrderDetails. 19. Seleccione el cuadro de verificacin seguido por * en la lista Columns. Esto hace que todas las columnas de la tabla sean seleccionadas. 20. Haga clic en WHERE. 21. Aparecer el cuadro de dilogo WHERE Query Builder.
23. Seleccione el botn de opcin Filter y escriba @OrderID en el cuadro filter (predeterminado).
Nota Esta opcin coloca el Operador Right como parte de la sentencia WHERE. Mas adelante pasar el valor del parmetro para la sentencia WHERE.
24. Haga clic en OK. 25. Volver al paso Construct SELECT Query del Code Builder Wizard.
26. Haga click en Next. 27. Observar el segundo paso del Code Builder Wizard; Query Preview. 28. Haga clic en Test Query. 29. Escriba 1 en el cuadro OrderID =. 30. Haga clic en OK.
31. Observar el registro OrderDetails correspondiente a OrderID = 1 en el cuadro de dilogo grilla resultante Query Preview.
32. Haga clic en Next. 33. Aparecer el tercer paso del Code Builder Wizard. ste es el cuadro de dilogo llamado Enter A Caption. Escriba GetOrderDetails en el cuadro method name. 34. Seleccione el botn de opcin DataSet (predeterminado). 35. Haga clic en Finish.
36. El Wizard (asistente) se cerrar y ASP.NET Web Matrix colocar una funcin llamada GetOrderDetails en la vista Code. La funcin acepta orderID como parmetro de entrada y devuelve un DataSet como parmetro de salida. El DataSet es llenado con datos de Order Detail para un especifico orderID, usando cdigo de acceso a datos ADO.NET, generado por el code builder:
37. Function GetOrderDetails(ByVal orderID As Integer) As System.Data.DataSet 38. Dim connectionString As String = _ 39. "server='localhost'; trusted_connection=true; Database='Orders'" 40. 41. Dim sqlConnection As System.Data.SqlClient.SqlConnection = _ 42. New System.Data.SqlClient.SqlConnection(connectionString) 43. 44. Dim queryString As String = _ 45. "SELECT [OrderDetails].* " & _ 46. "FROM [OrderDetails] " & _ 47. "WHERE ([OrderDetails].[OrderID] = @OrderID)" 48. 49. Dim sqlCommand As System.Data.SqlClient.SqlCommand = _ 50. New System.Data.SqlClient.SqlCommand(queryString, sqlConnection) 51. 52. sqlCommand.Parameters.Add("@OrderID", System.Data.SqlDbType.Int).Value = orderID 53. 54. Dim dataAdapter As System.Data.SqlClient.SqlDataAdapter = _ 55. New System.Data.SqlClient.SqlDataAdapter(sqlCommand) 56. 57. Dim dataSet As System.Data.DataSet = New System.Data.DataSet 58. 59. dataAdapter.Fill(dataSet) 60. 61. Return dataSet 62. End Function
64. Haga doble clic en Button para abrir el evento Button1_Click en vista Code. 65. Aada cdigo para revisar el valor del TextBox y pasarlo como parmetro en la funcin GetOrderDetails:
66. Sub Button1_Click(sender As Object, e As EventArgs) 67. 68. DataGrid1.DataSource = GetOrderDetails(CInt(TextBox1.Text)) 69. DataGrid1.DataBind() 70. 71. End Sub
72. Guarde y ejecute la pgina ASP.NET. 73. Su pgina ASP.NET surgir automticamente en una nueva instancia de su Explorador Web. 74. Escriba 1 en el TextBox y haga clic en el Button. 75. El DataGrid mostrar todos los registros en la tabla OrderDetails para el OrderID especificado.
1. 2. 3. 4. 5.
Abra el archivo myFirstDataPage.aspx en vista Design. Seleccione la solapa Design. Seleccione el DataGrid. Haga clic en el link de Auto Format, situado debajo de la ventana Properties. Se presentar el cuadro de dilogo Auto Format, el cual permite seleccionar un conjunto predefinido de colores, estilos de bordes y otras configuraciones (referidas a un esquema) y aplicar estos al control DataGrid.
6.
Seleccione la opcin Simple 1 en el esquema ListBox. Cuando seleccione un esquema, las configuraciones de esquema son aplicadas a las propiedades del control. Note que la vista previa muestra como se ve el DataGrid con el esquema aplicado. Haga clic en OK.
7.
8. 9.
Guarde y ejecute la pgina ASP.NET. Su pgina ASP.NET aparecer automticamente en una nueva instancia de su Explorador Web.
10. Escriba 1 en el TextBox y presione Button. Observe que el MasterGrid implementa las opciones de formato del esquema Simple 1.
1. 2. 3.
Abra el archivo myFirstDataPage.aspx en vista Design. Quite el DataGrid de la pgina ASP.NET. Desde la solapa Web Controls en el Toolbox, arrastre un control DataList sobre la pgina ASP.NET. Coloque el DataList en la misma posicin sobre el formulario donde estaba el DataGrid.
4. 5.
Haga clic con el botn secundario sobre el DataList y seleccione Edit Templates. Ahora ver el cuadro de dilogo Edit Templates.
6. 7. 8. 9.
Seleccione ItemTemplates de lista desplegable Select a Template to edit. Seleccione ItemTemplate de la lista desplegable Template Type. Escriba ProductName: en el cuadro Template Design. Desde la solapa Web Controls en el Toolbox, arrastre un control Label sobre el cuadro Template Design, inmediatamente a la derecha del ProductName:.
10. Seleccione el Label en el cuadro Template Design. 11. Seleccione la propiedad (DataBindings) en la ventana Properties.
12. Notar el cuadro de dilogo DataBindings. El cuadro de dilogo DataBindings muestra una lista de propiedades para el control, y permite especificar qu origen de datos se enlazar.
13. Seleccione el nodo Text en la vista de rbol Bindable Properties (predeterminado). 14. Seleccione el botn de opcin Custom binding expression.
15. Escriba DataBinder.Eval(Container.DataItem, "ProductName") en el cuadro Custom binding expression. Esta expresin liga el valor de la columna OrderDetailID con la propiedad Text del control Label, para cada uno de los registros de la tabla de la base de datos. 16. Haga clic en OK.
Nota El Label tendr cuadrados rodendolo. Esto indica que el control est enlazado a datos.
18. Seleccione la solapa Code. 19. Modifique el cdigo del evento Click de Button para que ste llene el DataList con el resultado de la llamada a la funcin GetOrderDetails:
20. Sub Button1_Click(sender As Object, e As EventArgs) 21. 22. DataList1.DataSource = GetOrderDetails(CInt(TextBox1.Text)) 23. DataList1.DataBind() 24. End Sub
25. Seleccione la solapa HMTL. 26. Aada atributos a la etiqueta DataList HTML para darle un borde negro:
27. <asp:DataList id="DataList1" runat="server" 28. BorderColor="Black" BorderStyle="Solid" BorderWidth="2"> 29. </asp:datalist>
30. Guarde y ejecute la pgina ASP.NET. 31. Su pgina ASP.NET aparecer automticamente en una nueva instancia de su Explorador Web. 32. Escriba 1 en el TextBox y presione Button. 33. El DataList mostrar todas las columnas de la tabla OrderDetails del OrderID especificado.
1. 2. 3. 4.
Abra el archivo myFirstDataPage.aspx en vista Design. Quite el TextBox de la pgina ASP.NET. Quite el Button del la pgina ASP.NET. De la solapa Web Controls en el Toolbox, arrastre un control DropDownList en la pgina ASP.NET. Coloque el DropDownList en la misma posicin donde se encontraba el TextBox borrado.
5.
Coloque la propiedad AutoPostBack del DropDownList a True (verdadero), usando la grilla de propiedades ubicada a la derecha, en la herramienta. Seleccione la solapa Code. Quite el cdigo del evento Button1_Click. Desde la solapa Code Builders en el Toolbox, arrastre un SELECT Data Method Code Builder en la parte inferior de la pgina ASP.NET.
6. 7. 8.
9.
10. Escriba localhost en el cuadro Server (predeterminado). 11. Haga clic en la lista desplegable Database. ASP.NET Web Matrix se conectar con el origen de datos y llenar la lista desplegable Database con nombres de bases de datos. Seleccione la base de datos Orders que desarroll en secciones anteriores. 12. Haga clic en OK. 13. Aparecer el paso uno del Code Builder Wizard; ste es llamado cuadro de dilogo Construct SELECT Query.
14. Seleccione Orders en la lista Tables. 15. Seleccione el cuadro de verificacin seguido por el tem OrderID en la lista Columns. 16. Haga clic en Next. 17. Aparecer el paso dos del Code Builder Wizard; este es llamado cuadro de dilogo Query Preview. 18. Haga clic en Test Query. 19. Notar la presencia de los registros Orders en el cuadro de dilogo con la grilla resultado Query Preview.
20. Haga clic en Next. 21. Aparecer el Code Builder Wizard. Escriba GetOrders en el cuadro method name. 22. Seleccione el botn de opcin DataSet (predeterminado). 23. Haga clic en Finish.
24. El Wizard se cerrar y ASP.NET Web Matrix colocar la funcin llamada GetOrders en la vista Code. La funcin no acepta parmetros de entrada y devuelve un DataSet como un parmetro de salida. El DataSet es llenado con todos los OrderIDs de la tabla Orders:
25. Function GetOrders() As System.Data.DataSet 26. Dim connectionString As String = _ 27. "server='localhost'; trusted_connection=true; Database='Orders'" 28. 29. Dim sqlConnection As System.Data.SqlClient.SqlConnection = _ 30. New System.Data.SqlClient.SqlConnection(connectionString) 31. 32. Dim queryString As String = "SELECT [Orders].[OrderID] FROM [Orders]" 33. 34. Dim sqlCommand As System.Data.SqlClient.SqlCommand = _ 35. New System.Data.SqlClient.SqlCommand(queryString, sqlConnection) 36. 37. Dim dataAdapter As System.Data.SqlClient.SqlDataAdapter = _ 38. New System.Data.SqlClient.SqlDataAdapter(sqlCommand) 39. 40. Dim dataSet As System.Data.DataSet = New System.Data.DataSet 41. 42. dataAdapter.Fill(dataSet) 43. 44. Return dataSet 45. End Function
46. Seleccione la solapa Code. 47. Aada un mtodo que manipule el evento Page_Load y llene el DropDownList con el resultado de la llamada a la funcin GetOrders sobre la visita inicial (no postback) de la pgina ASP.NET:
48. Sub Page_Load(Sender As Object, E As EventArgs) 49. 50. If Not Page.IsPostBack Then 51. DropDownList1.DataTextField = "OrderID"
52. DropDownList1.DataSource = GetOrders() 53. DropDownList1.DataBind() 54. End If 55. 56. End Sub
57. Seleccione la solapa Design. 58. Haga doble clic sobre el control de servidor Dropdownlist para crear un manejo de evento SelectedIndexChanged. 59. Agregue cdigo en el evento del DropDownList SelectedIndexChanged, que liga el DataList, para el OrderID dentro del DropDownList:
60. Sub DropDownList1_SelectedIndexChanged(sender As Object, e As EventArgs) 61. 62. DataList1.DataSource = GetOrderDetails(DropDownList1.Items(DropDownList1.SelectedIndex).Text) 63. DataList1.DataBind() 64. 65. End Sub
66. Guarde y ejecute la pgina ASP.NET. 67. Su pgina ASP.NET aparecer automticamente en una nueva instancia de su Explorador Web. 68. Seleccione 1 en el DropDownList. 69. El DataList mostrar todos los registros del la tabla OrderDetails para el OrderID especificado.
1. 2. 3. 4. 5. 6. 7. 8.
Abra Microsoft ASP.NET Web Matrix y ver el cuadro de dilogo New File. Seleccione (General) de la panel Templates. Seleccione la plantilla XML Web Service. Escriba la ruta de acceso del archivo en el cuadro Location. Escriba myFirstWebService.asmx en el cuadro Filename. Seleccione Visual Basic en la lista desplegable Language. Escriba Sample en el cuadro Class. Escriba MatrixDemo en el cuadro Namespace.
9.
1. 2.
Abra el archivo myFirstWebService.asmx en vista Code. Aada cdigo al WebMethod llamado Subtract. La funcin tiene dos parmetros de entrada y uno de salida, que contiene la diferencia de los dos primeros. Todos son del tipo Integer:
3. <WebMethod> Public Function Subtract(a As Integer, b As Integer) As Integer 4. Return a - b 5. End Function
6. 7.
Guarde y ejecute el Servicio Web XML (presione el botn start o presione F5 para ejecutarlo). Aparecer una pgina generada automticamente, describiendo su Servicio Web XML en una nueva instancia de su Explorador Web. Aparecer el archivo de descripcin HTML del Servicio Web XML, conteniendo el mtodo Subtract.
8.
9.
Haga clic en el enlace Subtract, situado en la parte superior del archivo de descripcin HTML. Esto traer una pgina con detalles del mtodo web Subtract, incluyendo un esquema de detalles acerca de la carga de SOAP (el cual es usado para invocar este mtodo web) y un formulario HTML para invocar y probar el mtodo.
10. Introduzca 8 en cuadro del parmetro a. 11. Introduzca 3 en el cuadro del parmetro b. 12. Haga clic en Invoke. 13. El Servicio Web regresar una respuesta XML que da la diferencia entre los dos parmetros de entrada en una nueva instancia de su Explorador Web.
1. 2.
Abra el archivo myFirstWebService.asmx en vista Code. Desde la solapa Code Builders en el Toolbox, arrastre un SELECT Data Method Code Builder en la pgina del Servicio Web XML. El cuadro de dilogo Connect to Database aparecer. Escriba localhost en el cuadro Server (predeterminado). Haga clic en la lista desplegable Database. ASP.NET Web Matrix se conectar al origen de datos y llenar la lista Database con nombres de bases de datos. Seleccione la base de datos Orders que cre en las secciones anteriores. Haga clic en OK.
3. 4. 5.
6.
7.
Aparecer el paso uno Code Builder Wizard, el cual es llamado cuadro de dilogo Construct SELECT Query.
8. 9.
Seleccione Orders en la lista Tables. Seleccione el cuadro de verificacin seguido por el item * en la lista Columns.
10. Haga click en Next. 11. Observar el paso dos del Code Builder Wizard; esto es llamado cuadro de dilogo Query Preview. 12. Haga clic en Test Query. 13. Ver aparecer los registros Orders en el cuadro de dilogo Query Preview en la grilla resultado.
14. Haga clic en Next. 15. Distinguira el tercer paso del Code Builder Wizard; esto es llamado cuadro de dilogo Enter A Caption. Escriba GetOrders en el cuadro method name. 16. Seleccione el botn de opcin DataSet (predeterminado). 17. Haga clic en Finish.
18. El Wizard se cerrar y ASP.NET Web Matrix colocar la funcin llamada GetOrders en vista Code. La funcin no tiene parmetros de entrada y devuelve un DataSet como un parmetro de salida. El DataSet es llenado con todos los pedidos de la tabla Orders. 19. Aada el atributo WebMethod a la funcin GetOrders. El WebMethod no tiene parmetros de entrada y devuelve un DataSet como parmetro de salida. El DataSet es llenado con todos los registros de la tabla Orders:
20. <WebMethod> Function GetOrders() As System.Data.DataSet 21. Dim connectionString As String = _ 22. "server='localhost'; trusted_connection=true; Database='Orders'" 23. 24. Dim sqlConnection As System.Data.SqlClient.SqlConnection = _ 25. New System.Data.SqlClient.SqlConnection(connectionString) 26. 27. Dim queryString As String = "SELECT [Orders].* FROM [Orders]" 28. Dim sqlCommand As System.Data.SqlClient.SqlCommand = _ 29. New System.Data.SqlClient.SqlCommand(queryString, sqlConnection) 30. 31. Dim dataAdapter As System.Data.SqlClient.SqlDataAdapter = _ 32. New System.Data.SqlClient.SqlDataAdapter(sqlCommand) 33. 34. Dim dataSet As System.Data.DataSet = _ 35. New System.Data.DataSet 36. 37. dataAdapter.Fill(dataSet) 38. 39. Return dataSet 40. End Function
42. Su pgina de Servicio Web XML aparecer automticamente en una nueva instancia de su Explorador Web. 43. Ver la pgina HTML de descripcin del Servicio Web XML. Esta muestra todo los servicios soportados por Servicio Web XML en particular.
44. Haga clic en el link GetOrders situado arriba, en el archivo HTML de descripcin. 45. Haga clic en Invoke.
46. El Servicio Web devolver una respuesta XML que muestra todas las columnas en la tabla Orders en una nueva instancia de su Explorador Web.
1. 2. 3. 4. 5. 6. 7.
Abra Microsoft ASP.NET Web Matrix y aparecer el cuadro de dilogo New File. Seleccione (General) del panel Templates. Seleccione la plantilla ASP.NET Page. Escriba la ruta de acceso del archivo en el cuadro Location. Escriba myFirstWSClient.aspx en el cuadro Filename. Seleccione Visual Basic en la lista desplegable Language. Haga clic en OK. El archivo myFirstWSClient.aspx se abrir en vista Design.
8.
Desde la solapa Web Controls en el Toolbox, arrastre un DataGrid y un control Button sobre la pgina ASP.NET. Presione la tecla Enter entre los asentamientos de cada control.
9.
10. Seleccione el tem WebService Proxy Generator del men Tools. 11. Observar el cuadro de dilogo XML Web Service Proxy Generator.
12. Escriba todo el nombre en el cuadro WSDL URL del URL habilitado por el Web service que desarroll anteriormente en esta seccin. Por ejemplo: http://localhost:8080/myFirstWebService.asmx Nota WSDL es la sigla por Web Services Description Language. WSDL define cmo un Servicio Web XML se comporta e instruye al cliente com interactuar con el servicio. Usted puede acceder al WSDL para el Servicio Web, aadiendo una cadena de consulta parametrizada para el URL del Servicio Web. Por ejemplo: http://localhost:8080/myFirstWebService.asmx?WSDL 13. Escriba MatrixDemo en el cuadro Namespace. 14. Seleccione Visual Basic .NET en la lista desplegable Language. 15. Escriba una ruta de acceso de archivo en el cuadro Output Directory. Importante ASP.NET Web Matrix requiere que el archivo proxy se encuentre en el mismo path (ruta de acceso) que la pgina ASP.NET. 16. Acepte el valor predeterminado para el Source File y para el cuadro Generate Assembly. 17. Haga clic en Generate. 18. Ver un cuadro de mensaje confirmando la generacin del proxy para el Servicio Web.
20. Haga clic en Cancel para cerrar el cuadro de dilogo XML Web Service Proxy Generator. 21. Seleccione la solapa Design y haga doble clic en el control Button. ASP.NET Web Matrix generar automticamente un manejo de evento para el evento Click del control Button y abrir la pgina en vista Code. 22. Aada cdigo para el evento Button1_Click, a fin de llamar el objeto Web Service Proxy para generar y ligar el resultado de la llamada del WebMethod GetOrders para el DataGrid:
23. Sub Button1_Click(sender As Object, e As EventArgs) 24. 25. 'Declaration format: Dim variablename As New Namespace.Class 26. Dim wsProxy As New MatrixDemo.Sample() 27. 28. DataGrid1.DataSource = wsProxy.GetOrders() 29. DataGrid1.DataBind() 30. End Sub
31. Guarde y ejecute la pgina ASP.NET. 32. Su pgina ASP.NET aparecer automticamente en una nueva instancia de su Explorador Web. 33. Haga click en Button. 34. El DataGrid mostrar todos los registros de la tabla Orders.
1. 2. 3. 4. 5. 6. 7.
Abra Microsoft ASP.NET Web Matrix y ver el cuadro de dilogo New File. Seleccione Mobile Pages del panel Templates. Seleccione la plantilla Simple Mobile Page. Escriba la ruta del archivo en el cuadro Location. Escriba myFirstMobilePage.aspx en el cuadro Filename. Seleccione Visual Basic en la lista Language. Haga click en OK. El archivo myFirstMobilePage.aspx se abrir en vista Design.
1.
Desde la solapa Mobile Controls en el Toolbox, arrastre un control ObjectList en la Mobile page dentro del
2. 3. 4.
Coloque la propiedad ID para el ObjectList a OrderList. Seleccione la solapa Code. Desde la solapa Code Builders en el Toolbox, arrastre un SELECT Data Method Code Builder sobre la parte inferior de la pgina ASP.NET. Ver el cuadro de dilogo Connect to Database. Escriba localhost en el cuadro Server (predeterminado). Haga clic en la lista Database. ASP.NET Web Matrix se conectar al origen de datos y llenar la lista Database con nombres de bases de datos. Seleccione la base de datos Orders. Haga clic en OK. Advertir entonces el paso uno del Code Builder Wizard; esto es llamado cuadro de dilogo Construct SELECT Query.
5. 6. 7.
8. 9.
10. Seleccione Orders en la lista Tables. 11. Seleccione el cuadro de verificacin seguido por el tem * de la lista Columns.
12. Haga clic en Next. 13. Ver el paso dos del Code Builder Wizard; esto es llamado cuadro de dilogo Query Preview. 14. Haga clic en Test Query. 15. Ver aparecer los registros Orders en el cuadro de dilogo Query Preview de la grilla de resultados. 16. Haga clic en Next. 17. Seguidamente observar el paso tres del Code Builder Wizard. Escriba GetOrders en el cuadro method name. 18. Seleccione el botn de opcin DataSet (predeterminado). 19. Haga clic en Finish. 20. El Wizard se cerrar y ASP.NET Web Matrix colocar la funcin llamada GetOrders en vista Code. sta funcin no tiene parmetros y devuelve un DataSet como parmetro de salida. El DataSet es llenado con todos los OrderIDs de la tabla Orders:
21. Function GetOrders() As System.Data.DataSet 22. Dim connectionString As String = _ 23. "server='localhost'; trusted_connection=true; Database='Orders'" 24. 25. Dim sqlConnection As System.Data.SqlClient.SqlConnection = _ 26. New System.Data.SqlClient.SqlConnection(connectionString) 27. 28. Dim queryString As String = "SELECT [Orders].* FROM [Orders]" 29. 30. Dim sqlCommand As System.Data.SqlClient.SqlCommand = _ 31. New System.Data.SqlClient.SqlCommand(queryString, sqlConnection) 32. 33. Dim dataAdapter As System.Data.SqlClient.SqlDataAdapter = _ 34. New System.Data.SqlClient.SqlDataAdapter(sqlCommand) 35. 36. Dim dataSet As System.Data.DataSet = New System.Data.DataSet 37. 38. dataAdapter.Fill(dataSet) 39. 40. Return dataSet 41. End Function
42. Aada cdigo para el evento Page_Load que liga el ObjectList con el resultado de la llamada de la funcin GetOrders:
43. Sub Page_Load(Sender As Object, E As EventArgs) 44. 45. OrderList.DataSource = GetOrders() 46. OrderList.DataBind() 47. 48. End Sub
49. Haga clic en el botn Start o presione F5 para ejecutar la pgina. Esto probar la pgina con el Explorador Web cliente. 50. Haga clic sobre un enlace OrderID para ver los detalles de la tabla Orders.
51. Alternativamente, podr probar la pgina contra un emulador de dispositivo mvil o con un emulador de telfono celular o PDA. Esta pgina ajustar automticamente el lenguage de marcado (por ejemplo: tener como salida WML para dispositivos WAP). 52. Cierre la instancia del Explorador Web.
Siguiente Paso >>
1. 2.
3. 4.
Presione el enlace GoURL. Escriba el URL para myFirstMobilePage que implement para el IIS anteriormente.
5.
6.
Para ver los detalles de la tabla Orders, haga clic sobre un enlace de OrderID en la ventana del emulador del dispositivo.
Nota Haga clic sobre los botones del emulador del dispositivo para desplazarse a travs de los detalles de pedidos.
7.
Hosting ISP/FTP
Conectarse a un proveedor de hosting
ASP.NET Web Matrix proporciona acceso remoto para los archivos de las instancias de las aplicaciones Web, va el File Transport Protocol (FTP). Usted puede abrir, editar y publicar archivos remotos desde el ASP.NET Web Matrix. Con los siguientes pasos, usted aadir una nueva conexin FTP, y de esta manera podr Modificar una pgina ASP.NET remota en un servidor Web..
1.
2.
3.
4. 5. 6. 7. 8.
Escriba un sitio FTP en el cuadro FTP Site. Escriba un puerto FTP en el cuadro Port. El puerto predeterminado es 21. Escriba el nombre de usuario del sitio FTP en el cuadro User Name. Escriba la contrasea del sitio FTP en el cuadro Password. Escriba un URL vlido de un sitio Web en el cuadro Web URL. Este podra ser el URL de la direccin de localizacin del Servidor Web remoto y ser usado por ASP.NET Web Matrix para resolver la ejecucin de la pgina. Haga clic en OK.
9.
10. Observar un nuevo nodo en la solapa Workspace de la ventana Workspace, que representa al directorio raz del URL especificado en el cuadro de dilogo New FTP Connection. Cualquier nodo
Hosting ISP/FTP
Modificar una pgina ASP.NET remota
En esta serie de pasos, usted modificar una pgina ASP.NET alojada en un servidor remoto, por medio de la conexin FTP que usted estableci en la seccin anterior.
1.
En la ventana Workspace, arrastre el archivo myFirstPage.aspx (que desarroll en la seccin Su Primera Pgina ASP.NET) desde el directorio donde se encuentra localizado, y sultelo en el FTP Workspace. Esto copiar los archivos al sitio FTP proveedor de hosting.
2. 3.
Haga doble clic en el archivo myFirstPage.aspx en el FTP Workspace para abrir la vista Design. Ejecute la pgina apretando el botn Start, o presionando F5. Esto abrir automticamente en su Explorador Web la pgina myFirstPage.aspx alojada remotamente.
4. 5. 7. 8.
Vuelva a ASP.NET Web Matrix y seleccione la solapa HTML. Aada un atributo a la etiqueta <body> para poner el color de fondo en Rojo: Guarde la pgina ASP.NET. Ejecute la pgina nuevamente pulsando el botn Start o presionando F5. Ver que la pgina remota ahora tiene un fondo rojo.
6. <body bgcolor="Red">
9.
Hosting ISP/FTP
Desconectarse del proveedor de hosting
A continuacin, usted aprender a desconectarse del proveedor de hosting basado en la conexin FTP que estableci en la secuencia de pasos anteriores.
1. 2.
Haga clic con el botn secundario en el nodo raz del sitio de hosting FTP en la ventana Workspace. Seleccione Delete.
Ayuda y Comunidad
Archivos de plantilla
ASP.NET Web Matrix proporciona varias plantillas de archivos que usted puede usar iniciar del desarrollo de sus aplicaciones Web ASP.NET. Una plantilla de archivo crea el archivo inicial, referencias, cdigo de marco de trabajo, configuraciones de propiedades y tareas apropiadas para la tarea seleccionada. Cuando usted crea un nuevo archivo, los conos en el cuadro de dilogo New File representan las tareas disponibles. Por ejemplo, los siguientes son los File Templates para la categora (General):
La plantilla de archivo que est asociada con el cono que usted seleccion, determina el tipo de salida y otras opciones disponibles para el proyecto. Cuando usted selecciona una plantilla de archivo, una breve descripcin del tem aparecer debajo del marco Templates.
Nota Este Tour Guiado utiliza solo un pequeo subconjunto de las plantillas de archivo disponibles, que estn incluidas en las pginas ASP.NET Page (vea Crear un nueva pgina ASP.NET), el XML Web Service (vea Crear un nuevo Servicio Web XML), el Simple Mobile Page (vea Crear un nueva pgina para dispositivos mviles) y el Master-Details Grid Data Report (vea Crear una pgina Default bajo la seccin Construir una aplicacin simple). Las plantillas de archivos ASP.NET Web Matrix estn agrupadas en seis categoras:
General: usadas para un propsito general como desarrollo de pginas ASP.NET, Servicios Web XML, archivos HTML, archivos reutilizables de clases, hojas de estilo en cascada y archivos XML. Data Pages: usadas para consultar y manipular datos de una base de datos en DataGrids. Mobile Pages: usadas para un propsito general de desarrollo de aplicaciones que tengan como objetivo los dispositivos mviles, por ejemplo los telfonos mviles. Output Caching: usadas para mejorar el rendimiento de las pginas ASP.NET, mediante el caching (mantener en memoria) de peticiones para una pgina en particular. De esta manera, el cdigo que inicia la pgina, no se tendr que ejecutar en las subsiguientes peticiones. Security: usadas para construir pginas de inicio (login) y cierre de sesin (logout) para una aplicacin que requiere Forms Based Authentication (autentificacin basada en formas). Web Services: usadas para escribir un Servicio Web XML service que puede ser utilizado por otros Servicios Web o por aplicaciones en la red.
Ayuda y Comunidad
Comunidad
Community es su punto de partida para comunicarse en lnea con colegas y expertos, para obtener informacin acerca de ASP.NET, otros productos de Microsoft y tecnologas, y para servicios de foros abiertos. Usted puede acceder a Community directamente desde el entorno de desarrollo de ASP.NET Web Matrix con la seleccin de la solapa Community. La solapa Community est localizada abajo, en la esquina derecha del entorno de desarrollo de ASP.NET Web Matrix.
1. 2.
Haga clic en el botn ASP.NET Web Matrix Online and Discussion Forums (predeterminado). Observar la ventana Community, actualizada con los recursos que son especficos de ASP.NET Web Matrix.
3. 4.
Haga clic en el botn Related Links. Aparecer la ventana Community, actualizada con los recursos en lnea relativos a ASP.NET y otras tecnologas .NET.
5. 6.
Haga clic en el botn Contacts. Ver la ventana Community actualizada con los contactos presentes en su grupo My ASP.NET Contacts en Windows Messenger.
Ayuda y Comunidad
Bsqueda
En la comunidad en lnea de Microsoft, usted puede encontrar respuestas a preguntas ASP.NET dentro del entorno de desarrollo de ASP.NET Web Matrix.
1. 2.
Escriba XML Web Service en el cuadro Type keywords to search online help sobre el toolbar Standard. Presione la tecla Enter.
3.
Observar los resultados de la bsqueda en una nueva instancia de su Explorador Web. Nota la peticin de bsqueda iniciada desde el entorno de desarrollo de ASP.NET Web Matrix es elaborada en el espacio de Forums, dentro del sitio Web www.asp.net.
Ayuda y Comunidad
Class Browser
El ASP.NET Web Matrix Class Browser le permite examinar y descubrir clases y sus miembros (propiedades, mtodos, eventos, variables, constantes, elementos numerados, etc.). El entorno de mltiples ventanas hace fcil la agrupacin, bsqueda y ordenamiento de las clases. La herramienta tambin provee enlaces a recursos de ayuda en lnea y local para cada miembro de la clase.
1. 2. 3.
Seleccione el grupo de programa Microsoft ASP.NET Web Matrix del Men Inicio. Seleccione ClassBrowser. Aparecer el ASP.NET Web Matrix Class Browser. El ASP.NET Web Matrix Class Browser contiene tres reas funcionales: Toolbar (1): contiene atajos para bsqueda, ordenamiento y agrupamiento de funciones. Classes Treeview (2): muestra las clases como nodos padre y tiene como nodos hijos a los miembros. Member Information Window (3): muestra informacin detallada para un tem seleccionado en el Classes Treeview, incluyendo enlaces a recursos en lnea y de ayuda local.
4. 5. 6.
Expanda el nodo System.Data en el Classes Treeview. Haga doble clic en el nodo DataSet. Ver el Member Information Window, el cual tiene tres reas funcionales: Member Treeview (4): Muestra el miembro como nodo padre y los Campos, Constructores, Propiedades y Eventos como nodos hijos. Member Information Tab (5): Muestra los miembros Namespace, Assembly, Jerarqua y detalles de Atributo. Tambin muestra enlaces para recursos de ayuda local y en lnea para los miembros. Member IL Tab (6): Muestra el Intermediate Language (IL) detallado por miembro. IL son metadatos que describen los elementos a el compilador. Cuando el cdigo es ejecutado, el runtime carga metadatos en la memoria y lo referenca para descubrir informacin del cdigo acerca de clases, miembros, herencia, etc.
1. 2.
Conctese a la base de datos Orders creada en las anteriores secciones del Tour Guiado. Haga clic en el nodo Tables en la vista de rbol de la ventana Data y haga clic en el botn New Item sobre el toolbar de la ventana Data. Aparecer el cuadro de dilogo Create New Table.
3.
4. 5. 6. 7. 8.
Escriba Users en el cuadro Table Name. Haga clic en el botn New en el rea Columns del cuadro de dilogo. Escriba UserID en el cuadro Name en el rea Column Properties del cuadro de dilogo. Seleccione Int en la lista Data Type. Seleccione el cuadro de verificacin Required y luego seleccione los cuadros de verificacin Primary Key y Auto-increment. Haga clic en New para continuar aadiendo columnas.
9.
10. Agregue la segunda columna para la tabla Users llamada UserName con las siguientes propiedades: . Name: UserName . Data Type: VarChar . Required: True (checked) . Primary Key: False (unchecked) . Field Size: 8 11. Aada una tercera columna para la tabla Users llamada UserPassword con las siguientes propiedades: . Name: UserPassword . Data Type: VarChar . Required: True (checked) . Primary Key: False (unchecked) . Field Size: 25 12. Haga clic en OK para grabar la tabla Users para la base de datos Orders. 13. La tabla Users aparece como un el nodo hijo Tables en la ventana Data.
1.
Edite la tabla Users. Hay dos formas de editar tablas en el entorno integrado de desarrollo ASP.NET Web Matrix: a. b. Haciendo clic en el botn Edit del toolbar de la ventana Data. Haciendo doble clic sobre el nombre de la tabla en la vista de rbol de la ventana Data.
2.
Observar el cuadro de dilogo Edit Table. El cuadro de dilogo Edit Table muestra un data grid que contiene datos de la tabla. Las modificaciones de datos que haga en el data grid Edit Table sern hechas directamente contra la base de datos. Aada dos nuevos registros de datos para la tabla Users. Nota Presione la tecla Enter o seleccione un registro diferente en el data grid para guardar un nuevo registro en la base de datos. Nota La columna UserID es configurada para auto-incrementarse (iniciando en 1 con incrementos de
3.
1). La base de datos determina automticamente y asigna el siguiente valor para un campo autoincremental, cuando un nuevo registro es guardado en la base de datos. Los campos autoincrementales son solo de lectura en el data grid del cuadro de dilogo Edit Table y tendrn valores negativos hasta que el nuevo registro sea aadido a la base de datos. Nota Haga clic en el enlace Edit/View Table Design en la parte inferior del cuadro de dilogo Edit Table para ver la definicin de la tabla mientras edita el nodo. No se puede editar la definicin tabla si hay datos en ella.
4.
1. 2. 3. 4. 5. 6. 7.
Seleccione New del men File. Aparecer el cuadro de dilogo New File. Seleccione Data Pages del panel Templates. Seleccione la plantilla Master - Details Grids. Escriba una ruta de acceso de archivo en el cuadro Location. Escriba Default.aspx en el cuadro Filename. Seleccione Visual Basic en la lista Language. Haga clic en OK. El archivo Default.aspx se abrir en vista Design.
8.
9.
Modifique las variables ConnectionString y CommandText en la sub rutina BindMasterGrid para referenciar las columnas en la tabla Orders de la base de datos Orders.
10. Dim ConnectionString As String = "server=(local);database=Orders;Integrated Security=SSPI" 11. 12. Dim CommandText As String = "select OrderID, OrderDate, CustomerName from Orders"
13. Modifique las variables ConnectionString y CommandText en la sub rutina BindDetailGrid, para referenciar las columnas en la tabla OrderDetails de la base de datos Orders.
14. Dim ConnectionString As String = "server=(local);database=Orders;Integrated Security=SSPI" 15. 16. Dim CommandText As String = "select OrderDetailID, ProductName, Quantity, UnitPrice " & _ 17. "from OrderDetails where OrderID = '" & filterValue & "'"
18. Seleccione la solapa Design. 19. Coloque la propiedad DataKeyField del MasterGrid a OrderID. La propiedad DataKeyField es usada para filtrar registros en la grilla detalle.
20. Remplace el texto de cabecera (Master - Detail Grids) con un control Label de la solapa Web Controls en el Toolbox. 21. Coloque la propiedad ID del Label a Welcome.
22. Seleccione la solapa Code. 23. Modifique el cdigo del evento Page_Load para que ste coloque la propiedad Text del Label a nombre del usuario actual y para ligar el data grids:
24. Sub Page_Load(Sender As Object, E As EventArgs)
25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. End
Welcome.Text = "Hello, " + User.Identity.Name If Not Page.IsPostBack Then ' Databind the master grid on the first request only ' (viewstate will restore these values on subsequent postbacks). MasterGrid.SelectedIndex = 0 BindMasterGrid() BindDetailGrid() End If Sub
40. Guarde y ejecute la pgina ASP.NET. 41. Su pgina ASP.NET aparecer automticamente en una nueva instancia de su Explorador Web. Seleccione un registro en el MasterGrid. Note como el DetailsGrid se actualiza con cada seleccin de registro del MasterGrid. Note tambin que el nombre de usuario podra o no mostrarse, dependiendo de la configuracin de su seguridad de archivo. De manera predeterminada, en la mayora de los servidores el nombre de usuario no aparecer porque un usuario que accedi una pgina no necesita tener una sesin activa para verlo (el acceso annimo es permitido). Se cambiar este valor predeterminado en la siguiente serie de pasos para forzar que el usuario inicie sesin.
1. 2. 3. 4. 5. 6. 7.
Seleccione New del men File y ver el cuadro de dilogo New File. Seleccione Security del panel Templates. Seleccione la plantilla Login Page. Escriba una ruta de acceso de archivo en el cuadro Location. Escriba Login.aspx en el cuadro Filename. Seleccione Visual Basic en la lista desplegable Language. Haga clic en OK. El archivo Login.aspx se abrir en vista Design.
8.
9.
Desde la solapa Code Builders en el Toolbox, arrastre SELECT Data Method Code Builder en la pgina ASP.NET.
10. Observar el cuadro de dilogo Connect to Database. 11. Escriba localhost en el cuadro Server. 12. Haga clic en la lista desplegable Database. ASP.NET Web Matrix se conectar al origen de datos y llenar la lista desplegable Database con nombres de base de datos. Seleccione la base de datos Orders y haga click en OK. 13. Ver aparecer el paso uno del Code Builder Wizard; este es el llamado cuadro de dilogo Construct SELECT Query. 14. Seleccione Users en la lista Tables. 15. Seleccione el cuadro de verificacin seguido por el tem * en la lista Columns. 16. Haga clic en WHERE. 17. Observar el cuadro de dilogo WHERE Query Builder. 18. Seleccione la tabla Users en la lista desplegable Table del panel Left Operand. 19. Seleccione UserName en la lista Column.
Nota Esta opcin pone el operador Left como parte de la sentencia WHERE.
20. Seleccione el botn de opcin Filter y Escriba @UserName en el cuadro filter (predeterminado).
Nota Esta opcin pone el operador Right como parte de la sentencia WHERE. Ms adelante usted pasar este valor como un parmetro para la sentencia WHERE.
21. Haga clic en OK. 22. Tendr que retornar al paso Construct SELECT Query del Code Builder Wizard. 23. Haga clic en AND Clause. 24. Ver el cuadro de dilogo Query Builder. 25. Seleccione la tabla Users en la lista desplegable Table en el panel Left Operand. 26. Seleccione UserPassword en la lista Column.
Nota Esta opcin coloca el operador Left como parte de la sentencia WHERE.
28. Haga clic en OK. 29. Retornar al paso Construct SELECT Query del Code Builder Wizard. 30. Haga clic en Next.
31. Ver el paso dos del Code Builder Wizard; Query Preview. 32. Haga clic en Test Query. 33. Escriba bsmith en el cuadro UserName =. 34. Escriba bsmith en el cuadro UserPassword =. 35. Haga clic en OK. 36. Observar el registro Users correspondiente para un especfico UserName y UserPassword que aparecer en la grilla, resultado del cuadro de dilogo Query Preview.
37. Haga clic en Next. 38. Observar el paso tres del Code Builder Wizard; este es el llamado cuadro de dilogo Enter A Caption. Escriba GetUser en el cuadro. 39. Seleccione el botn de opcin DataSet. 40. Haga clic en Finish.
41. El Wizard se cerrar y ASP.NET Web Matrix colocar la funcin llamada GetUser en vista Code. La funcin acepta un userName y userPassword como parmetro de entrada y devuelve un DataSet como parmetro de salida. El DataSet es llenado con los datos detalles de usuario para el especificado userName y userPassword:
42. Function GetUser(ByVal userName As String, ByVal userPassword As String) _ 43. As System.Data.DataSet 44. 45. Dim connectionString As String = _ 46. "server='localhost'; trusted_connection=true; Database='Orders'" 47. 48. Dim sqlConnection As System.Data.SqlClient.SqlConnection = _ 49. New System.Data.SqlClient.SqlConnection(connectionString) 50. 51. Dim queryString As String = _ 52. "SELECT [Users].* " & _ 53. "FROM [Users] " & _ 54. "WHERE (([Users].[UserName] = @UserName) AND " & _ 55. "([Users].[UserPassword] = @UserPassword))" 56. 57. Dim sqlCommand As System.Data.SqlClient.SqlCommand = _ 58. New System.Data.SqlClient.SqlCommand(queryString, sqlConnection) 59. 60. sqlCommand.Parameters.Add("@UserName", System.Data.SqlDbType.VarChar).Value = _ 61. userName 62. 63. sqlCommand.Parameters.Add("@UserPassword", System.Data.SqlDbType.VarChar).Value = _ 64. userPassword 65. 66. Dim dataAdapter As System.Data.SqlClient.SqlDataAdapter = _ 67. New System.Data.SqlClient.SqlDataAdapter(sqlCommand) 68. 69. Dim dataSet As System.Data.DataSet = New System.Data.DataSet
70. 71. dataAdapter.Fill(dataSet) 72. 73. Return dataSet 74. End Function
75. Actualice el evento click del Button para que ste valide las entradas de usuario contra el resultado de la llamada de la funcin GetUser:
76. Sub LoginBtn_Click(Sender As Object, E As EventArgs) 77. 78. If Page.IsValid Then 79. Dim userDS As New System.Data.DataSet 80. 81. userDS = GetUser(UserName.Text, UserPass.Text) 82. 83. If userDS.Tables(0).Rows.Count = 1 Then 84. FormsAuthentication.RedirectFromLoginPage(UserName.Text, true) 85. Else 86. Msg.Text = "Invalid Credentials: Please try again" 87. End If 88. End If 89. 90. End Sub
91. Guarde y ejecute la pgina de Login. 92. Su pgina Login aparecer automticamente en una nueva instancia de su Explorador Web. 93. Escriba bsmith en los cuadros Username y Password y haga clic en Login.
94. De manera predeterminada, la pgina Login va ha redireccionar al usuario a la pgina llamada Default.aspx en un exitoso login.
Nota La pgina Login mostrar un mensaje de error si proporciona credenciales que no
Recolectar credenciales del cliente utilizando formularios HTML (esto es autentificacin basada en Formularios) Prevenir el acceso de usuarios Web annimos
Crearemos el archivo con la utilizacin conjunta de la pgina Login.aspx, ya que permite forzar a los usuarios que realicen con xito un inicio de sesin, antes de visitar su pgina de reporte de datos Master/Details. Para activar esto, por favor sigua los pasos a continuacin:
1. 2. 3. 4. 5.
Seleccione New del men File y aparecer el cuadro de dilogo New File. Seleccione (General) del panel Templates. Seleccione la plantilla Web.Config. Escriba una ruta de archivo en el cuadro Location. Escriba Web.config en el cuadro Filename (predeterminado).
6.
7.
Coloque el atributo mode de la etiqueta authentication a Forms (predeterminado es Windows). El cdigo a continuacin pone las polticas de autentificacin de la aplicacin:
8. <authentication mode="Forms"> Nota La autentificacin basada en Formularios es un servicio de autentificacin ASP.NET que habilita a la aplicacin para proveer su propia UI de inicio de sesin y hacer su propia verificacin de credenciales.
9.
Quite las sub-etiquetas allow (predeterminado) de la etiqueta authorization. El cdigo a continuacin pone las polticas de autorizacin de la aplicacin:
10. <allow users="joeuser" /> 11. <allow roles="Admins" /> Nota Se puede permitir o negar el acceso para los recursos de la aplicacin mediante roles de usuario.
1.
Seleccione New del men File y ver el cuadro de dilogo New File.
2. 3. 4. 5. 6. 7. 8.
Seleccione (General) del panel Templates. Seleccione la plantilla ASP.NET Page. Escriba una ruta de acceso de archivo en el cuadro Location. Escriba NewUser.aspx en el cuadro Filename. Seleccione Visual Basic en la lista desplegable Language. Haga clic en OK y el archivo NewUser.aspx se abrir en vista Design. Desde la solapa Web Controls en el Toolbox, arrastre tres controles Label, dos controles TextBox y un control Button sobre la pgina ASP.NET.
9.
10. Cambie la propiedad Text del Label medio a UserPassword:. 11. Cambie la propiedad Text del Label bajo a vaco (sin texto). 12. Cambie la propiedad ID del Label bajo a Message. 13. Cambie la propiedad ID del TextBox superior a txtUserName. 14. Cambie la propiedad ID del TextBox bajo a txtUserPassword. 15. Cambie la propiedad TextMode para el TextBox de nombre de usuario a Password.
Nota Esta propiedad retira o pone el modo de comportamiento del text box. En este caso, porque una contrasea es informacin sensible, el TextBox automticamente ocultar lo que escribe el usuario.
16. Seleccione la solapa Code. 17. Desde la solapa Code Builders en el Toolbox, arrastre un INSERT Data Method Code Builder en la pgina ASP.NET.
18. Aparecer el cuadro de dilogo Connect to Database. 19. Teclee localhost en el cuadro Server. 20. Haga clic en la lista desplegable Database. ASP.NET Web Matrix se conectar con el origen de datos y llenar la lista desplegable Database con nombres de base de datos. Seleccione la base de datos Orders y haga clic en OK. 21. Ver el paso uno del Code Builder Wizard, el cual es el llamado cuadro de dilogo Construct INSERT Query. 22. Seleccione Users en la lista Tables.
Nota Deje el cuadro de verificacin de Column con el valor predeterminado.
24. Aparecer el paso dos del Code Builder Wizard; este es llamado cuadro de dilogo Enter A Caption. Escriba AddUser en el cuadro method name. 25. Haga clic en Finish.
26. El Wizard se cerrar y ASP.NET Web Matrix pondr una funcin llamada AddUser en vista Code. La funcin acepta un userName y userPassword como parmetros de entrada y devuelve un Integer como parmetro de salida. El valor Integer representar el total de registros afectados:
27. Function AddUser(ByVal userName As String, ByVal userPassword As String) As Integer 28. Dim connectionString As String = _ 29. "server='localhost'; trusted_connection=true; Database='Orders'" 30. 31. Dim sqlConnection As System.Data.SqlClient.SqlConnection = _ 32. New System.Data.SqlClient.SqlConnection(connectionString) 33. 34. Dim queryString As String = "INSERT INTO [Users] ([UserName], [UserPassword]) " & _ 35. "VALUES (@UserName, @UserPassword)" 36. 37. Dim sqlCommand As System.Data.SqlClient.SqlCommand = _ 38. New System.Data.SqlClient.SqlCommand(queryString, sqlConnection) 39. 40. sqlCommand.Parameters.Add("@UserName", System.Data.SqlDbType.VarChar).Value = _ 41. userName 42. 43. sqlCommand.Parameters.Add("@UserPassword", System.Data.SqlDbType.VarChar).Value = _ 44. userPassword 45. 46. Dim rowsAffected As Integer = 0 47. sqlConnection.Open 48. 49. Try 50. rowsAffected = sqlCommand.ExecuteNonQuery 51. Finally 52. sqlConnection.Close 53. End Try 54.
57. Seleccione la solapa Design. 58. Haga doble clic en el control Button. ASP.NET Web Matrix abrir el cdigo en el evento Button1_Click en vista Code. 59. Aada cdigo en el evento clic del Button. Esto llamar a la funcin AddUser, pasando el valor del TextBox como los parmetros UserName y UserPassword:
60. Sub Button1_Click(sender As Object, e As EventArgs) 61. 62. If AddUser(txtUserName.Text, txtUserPassword.Text) > 0 63. Message.Text = "Success" 64. Else 65. Message.Text = "Failure" 66. End If 67. 68. End Sub
69. Guarde y ejecute la pgina ASP.NET. 70. Su pgina ASP.NET aparecer automticamente en una nueva instancia de su Explorador Web. 71. Escriba un nuevo nombre de usuario en el cuadro UserName. 72. Escriba la contrasea de usuario en el cuadro UserPassword. 73. Haga clic en Button.
Nota El Label de mensaje va a contener un nuevo estado de usuario insertado.
74. Cierre la instancia del Explorador Web. 75. Abra el archivo Login.aspx que desarroll anteriormente en esta serie de pasos. Proporcionar al usuario la opcin de ejecutar la pgina NewUser.aspx si las credenciales de inicio de sesin son incorrectas. 76. Seleccione la solapa Code. 77. Modifique el evento clic del botn Login para que proporcione un enlace a la pgina NewUser en el Label de mensaje:
78. Msg.Text = "Invalid Credentials: Please try again or " + _ 79. "<a href='newuser.aspx'>register a new user</a>"
80. Guarde y ejecute la pgina ASP.NET. 81. Su pgina ASP.NET aparecer automticamente en una nueva instancia de su Explorador Web. 82. Escriba un nombre de usuario invlido en el cuadro UserName. 83. Escriba un password de usuario en el cuadro UserPassword. 84. Haga clic en el Button.
Nota El usuario ahora tiene la opcin de proporcionar credenciales de inicio de sesin vlidas o seguir el enlace de registro de un nuevo usuario.
1. 2. 3. 4.
Abra el archivo Default.aspx. Ejecute la pgina ASP.NET. Su pgina ASP.NET aparecer automticamente en una nueva instancia de su Explorador Web. Dado que esta es la primera vez que tiene acceso al sitio, no tendr acceso a la pgina (porque no inici sesin). ASP.NET redirecciona automticamente a la pgina de inicio de sesin donde usted puede introducir su cuenta de usuario/contrasea o hacer clic en el enlace de registro para crear una nueva cuenta. Una vez que inicie sesin, usted ser redirecionado a la pgina default.aspx donde tendr acceso el sitio restringido.
Temas Avanzados
Preferencias del usuario
Usted puede cambiar varias de las configuraciones que afectan al entorno de desarrollo (IDE) de ASP.NET Web Matrix. Experimente con la configuracin en el cuadro de dilogo Preferences hasta encontrar el mejor entorno para sus necesidades. Puede acceder al cuadro de dilogo Preferences por la seleccin de Preferences en el men Tools.
General Application: La pgina Application del cuadro de dilogo Preferences permite especificar cmo se mostrarn varios elementos en el men Recent Files y el cuadro de dilogo que aparece en el inicio de la aplicacin; ambos New File, Open File o ninguno. Se puede acceder a este cuadro de dilogo seleccionando la pgina Application del nodo General. Text Editor Fonts: La pgina Fonts del cuadro de dilogo Preferences permite establecer un esquema de fuentes para varios elementos de interfaz de usuario en el IDE. Se puede acceder a este cuadro de dilogo seleccionando la pgina Fonts del nodo Text Editor. Web Editing General: La pgina General del cuadro de dilogo Preferences le permite especificar el modo de edicin predeterminado; ambos Design o Preview. Se puede acceder a este cuadro de dilogo seleccionando la pgina General del nodo Web Editing.