lunes, 25 de enero de 2010

Crear páginas Web principal-detalle en Visual Studio

En muchas páginas Web los datos se muestran de más de una manera, mostrando a menudo los datos de las tablas relacionadas. En este tutorial se muestran las distintas maneras de trabajar con datos en varios controles y de varias tablas, incluidos los que tienen una relación principal-detalle. Las tareas ilustradas en este tutorial incluyen:

Rellenar una lista desplegable con datos de la base de datos.

Crear filtros: instrucciones SQL con una cláusula WHERE (consultas parametrizadas).

Mostrar datos filtrados en función de la selección del usuario en una lista desplegable.

Mostrar detalles sobre un registro seleccionado utilizando el control DetailsView.

Seleccionar un registro de una página y mostrar un registro relacionado de otra página.

Requisitos previos
Para poder completar este tutorial, necesitará:

Obtener acceso a la base de datos Northwind de SQL Server. Para obtener información sobre cómo descargar e instalar la base de datos de ejemplo Northwind de SQL Server, vea Installing Sample Databases en el sitio Web de Microsoft SQL Server.

Nota
Si necesita información sobre cómo iniciar sesión en el equipo en que se ejecuta SQL Server, póngase en contacto con el administrador del servidor.


Microsoft Data Access Components (MDAC) versión 2.7 o posterior.

Si utiliza Microsoft Windows XP o Windows Server 2003, ya dispone de MDAC 2.7. Sin embargo, si utiliza Microsoft Windows 2000, quizás tenga que actualizar la versión de MDAC instalada en el equipo. Para obtener más información, vea el artículo "Microsoft Data Access Components (MDAC) Installation" en MSDN Library.

Crear el sitio Web
Si ya ha creado un sitio Web en Visual Web Developer (por ejemplo, mediante los pasos descritos en Tutorial: Crear una página Web básica en Visual Web Developer o en Tutorial: Acceso a datos básico en páginas Web), puede utilizar ese sitio Web y pasar a la siguiente sección referente a la conexión con SQL Server. En caso contrario, cree un sitio Web y una página nuevos siguiendo estos pasos.

Para crear un sitio Web del sistema de archivos
Abra Visual Web Developer.

En el menú Archivo, haga clic en Nuevo sitio Web.

Aparece el cuadro de diálogo Nuevo sitio Web.

En Plantillas instaladas de Visual Studio, haga clic en Sitio Web de ASP.NET.

En el cuadro Ubicación, escriba el nombre de la carpeta dónde desea conservar las páginas de su sitio Web.

Por ejemplo, escriba el nombre de carpeta C:\WebSites.

En la lista Lenguaje, haga clic en el lenguaje de programación con el que prefiera trabajar.

Haga clic en Aceptar.

Visual Web Developer crea la carpeta y una nueva página denominada Default.aspx.

Conectar a SQL Server
Para trabajar con datos, necesita establecer una conexión a una base de datos. En este tutorial, creará una conexión, que es un proceso independiente del trabajo con páginas o controles Web.

Para crear una conexión con SQL Server
Presione CTRL+ALT+S para mostrar el Explorador de base de datos. En el Explorador de base de datos, haga clic con el botón secundario en Conexiones de datos y elija Agregar conexión.

Se muestra el cuadro de diálogo Cambiar origen de datos.

En el cuadro de diálogo Cambiar origen de datos, seleccione Microsoft SQL Server y haga clic en Aceptar.

En el cuadro de diálogo Agregar conexión, realice lo siguiente:

Especifique o seleccione el nombre del servidor SQL Server. Para un servidor ubicado en su equipo, escriba (local).

Seleccione Utilizar autenticación de SQL Server.

Escriba un nombre de usuario y una contraseña.

Seleccione Guardar mi contraseña.

Seleccione Northwind como la base de datos.

Haga clic en Probar conexión y, cuando esté seguro de que funciona, haga clic en Aceptar.

La conexión se agrega al Explorador de servidores.

Utilizar una lista desplegable como elemento principal
En esta parte del tutorial, agregará una lista desplegable a una página y la rellenará con una lista de categorías de la tabla Northwind. Cuando los usuarios seleccionen una categoría, la página mostrará los productos de esa categoría.

Para crear y rellenar una lista desplegable
Abra o cambie a la página Default.aspx. Si está trabajando con un sitio Web que ya había creado, agregue o abra una página con la que pueda trabajar en este tutorial.

Cambie a la vista Diseño.

Escriba Seleccionar productos por categoría en la página y dé al texto formato de encabezado, utilizando la lista desplegable Formato del bloque que está sobre el Cuadro de herramientas.

Desde el grupo Estándar del Cuadro de herramientas, arrastre un control DropDownList a la página.

En las Tareas de DropDownList, active la casilla de verificación Habilitar AutoPostBack.

Así se configura el control de forma que la página envíe los datos al servidor cada vez que se hace una selección en la lista, en lugar de esperar a que el usuario haga clic en un botón.

En las Tareas de DropDownList, seleccione Elegir origen de datos.

Se inicia el asistente Elegir origen de datos.

En la lista Seleccionar un origen de datos , haga clic .

Aparecerá el cuadro de diálogo Asistente para la configuración de orígenes de datos.

Seleccione Base de datos.

Así se especifica que desea obtener datos de una base de datos compatible con instrucciones SQL. (Incluye SQL Server y otras bases de datos compatibles con OLE-DB.)

En el cuadro Especificar un id. para el origen de datos, aparecerá un nombre de control de origen de datos predeterminado (SqlDataSource1). Puede dejar este nombre.

Haga clic en Aceptar.

El asistente muestra la página Configurar origen de datos - SqlDataSource1 en la que puede seleccionar una conexión de datos.

En la lista desplegable, seleccione la conexión Northwind que creó anteriormente en el tutorial.

Haga clic en Siguiente.

El asistente muestra una página donde se puede almacenar, si se desea, la cadena de conexión en el archivo de configuración.

No olvide activar la casilla de verificación Sí, guardar esta conexión como y haga clic en Siguiente. (Puede dejar el nombre predeterminado de la cadena de conexión.)

El asistente muestra una página donde se puede especificar los datos que se desea recuperar de la base de datos.

De la lista Nombre de Opciones de tabla o vista, seleccione Categories.

En el cuadro Columnas, seleccione CategoryID y CategoryName.

Haga clic en Siguiente.

Haga clic en Consulta de prueba para asegurarse de que obtiene los datos que desea.

Haga clic en Finalizar.

Se muestra el Asistente para la configuración de orígenes de datos, con el nombre del control de origen de datos ha configurado.

En la lista Seleccionar un campo de datos para mostrar en la lista desplegable, seleccione CategoryName.

Nota
Si no aparece ningún elemento en la lista, haga clic en el vínculo Actualizar esquema.


Esto especifica que el valor del campo CategoryName se mostrará como texto del elemento en la lista desplegable.

En la lista Seleccionar un campo de datos para el valor de la lista desplegable, seleccione CategoryID.

Esto especifica que cuando se selecciona un elemento, el campo CategoryID se devolverá como el valor del elemento.

Haga clic en Aceptar.

Antes de continuar, pruebe la lista desplegable.

Para probar la lista desplegable
Presione CTRL+F5 para ejecutar la página.

Cuando se muestre la página, examine la lista desplegable.

Seleccione una categoría para estar seguro de que la lista realiza una devolución de datos.

Ahora puede mostrar los productos de la categoría seleccionada en la lista desplegable.

Utilizar una cuadrícula para mostrar información de detalle
A continuación, puede ampliar la página para que incluya una cuadrícula. Cuando los usuarios realicen una selección en la lista desplegable de categorías, en la cuadrícula se mostrarán los productos de dicha categoría.

Para utilizar una cuadrícula para mostrar información de detalle
Cambie a la página Default.aspx o ábrala (o la página con la que ha estado trabajando) y cambie a la vista Diseño.

Desde el grupo Datos del Cuadro de herramientas, arrastre un control GridView a la página.

En el menú Tareas de GridView, seleccione en la lista Elegir origen de datos.

Se abrirá el Asistente para la configuración de orígenes de datos.

Seleccione Base de datos.

En el cuadro Especificar un id. para el origen de datos, aparecerá un nombre de control de origen de datos predeterminado (SqlDataSource2). Puede dejar este nombre.

Haga clic en Aceptar.

El asistente muestra una página donde puede seleccionar una conexión.

En la lista desplegable de conexiones, seleccione la conexión que creó y almacenó anteriormente en el tutorial (NorthwindConnectionString).

Haga clic en Siguiente.

El asistente muestra la página Configurar origen de datos - SqlDataSource2, en la que puede crear una instrucción SQL.

En la lista Nombre, seleccione Productos.

En el cuadro Columnas, seleccione ProductID, ProductName y CategoryID.

Haga clic en WHERE.

Aparecerá el cuadro de diálogo Agregar cláusula WHERE.

En la lista Columna, seleccione CategoryID.

En la lista Operador, seleccione =.

En la lista Origen, seleccione Control.

En Propiedades del parámetro, en la lista Id. de control, seleccione DropDownList1.

Con los últimos dos pasos se especifica que la consulta obtendrá el valor de búsqueda del Id. de categoría del control DropDownList que agregó anteriormente.

Haga clic en Agregar.

Haga clic en Aceptar para cerrar el cuadro de diálogo Agregar cláusula WHERE.

Haga clic en Siguiente.

En la Vista previa, haga clic en Consulta de prueba.

El asistente muestra un cuadro de diálogo en el que se le pide que especifique un valor que se utilizará en la cláusula WHERE.

Escriba 4 en el cuadro y haga clic en Aceptar.

Se muestran los registros de los productos de la categoría 4.

Haga clic en Finalizar para cerrar el asistente.

A continuación, puede probar la presentación de principal-detalle.

Para probar la página
Presione CTRL+F5 para ejecutar la página.

Cuando aparezca la página, se mostrarán los productos del primer elemento en la lista desplegable.

Seleccione una categoría de la lista y compruebe que los productos correspondientes aparecen en la cuadrícula.

Mostrar datos de principal-detalle en la misma página
En esta parte del tutorial, los datos de tablas relacionadas se mostrarán en una página. Los datos de la tabla principal se muestran en una cuadrícula donde los usuarios pueden seleccionar cada una de las filas. Al hacerlo, se muestran uno o varios registros de detalle en un control de desplazamiento que está en otra parte de la página. Para que sirva de ejemplo, utilizará la tabla de categorías de Northwind como tabla principal y la tabla de productos como tabla de detalles.

Para mostrar los registros principales
Agregue una nueva página al sitio Web y denomínela MasterDetails2.aspxa.

Cambie a la vista Diseño.

Escriba Página de principal-detalle en la página y dé al texto formato de encabezado.

Desde el grupo Datos del Cuadro de herramientas, arrastre un control GridView a la página.

En el menú Tareas de GridView, en la lista Elegir origen de datos, haga clic en y, a continuación, siga estos pasos para configurar un origen para el control GridView:

Seleccione Base de datos.

Haga clic en Aceptar.

En la lista desplegable de conexiones, seleccione la conexión que creó y almacenó anteriormente en el tutorial (NorthwindConnectionString).

Haga clic en Siguiente.

En la lista Nombre, seleccione Categorías.

En el cuadro Columnas, seleccione CategoryID y CategoryName.

Haga clic en Siguiente y, a continuación, en Finalizar.

Seleccione el control GridView y, en el menú Tareas de GridView, elija Editar columnas.

Se muestra el cuadro de diálogo Campos.

En Campos disponibles, abra el nodo Campo de comando, elija Seleccionar y, a continuación, haga clic en Agregar para agregarlo a la lista Campos seleccionados.

En la lista Campos seleccionados, elija Seleccionar y, a continuación, en la cuadrícula de la propiedad CommandField, establezca su propiedad SelectText en Detalles.

Haga clic en Aceptar para cerrar el cuadro de diálogo Campos.

Se agrega a la cuadrícula una nueva columna con el hipervínculo Detalles.

Seleccione el control GridView y, en la ventana Propiedades, asegúrese de que la propiedad DataKeyNames está establecida en CategoryID.

Así se especifica que al seleccionar una fila de la cuadrícula, ASP.NET puede buscar en una ubicación conocida la clave del registro que se muestra actualmente en categorías .

La cuadrícula le permite seleccionar una sola categoría. El paso siguiente es agregar el control DetailsView que mostrará los registros de detalle, es decir, los productos asociados a la categoría seleccionada. El control DetailsView utilizará otra consulta SQL para obtener sus datos, por lo que requiere un segundo control de origen de datos.

Para configurar una consulta para mostrar los registros relacionados
Presione ENTRAR para tener espacio debajo del control SqlDataSource1 en la página MasterDetails2.aspx en la vista Detalles.

Desde el grupo Datos del Cuadro de herramientas, arrastre un control DetailsView a la página.

Configúrelo para que utilice otro control de origen de datos, mediante los pasos siguientes:

En la lista Elegir origen de datos, seleccione .

Seleccione Base de datos.

Haga clic en Aceptar.

En la lista desplegable de conexiones, haga clic en la conexión que creó y almacenó anteriormente en el tutorial.

Haga clic en Siguiente.

En la lista Nombre de Opciones de tabla o vista, seleccione Products.

En el cuadro Columnas, seleccione ProductID, ProductName y CategoryID.

Haga clic en WHERE.

Aparecerá el cuadro de diálogo Agregar cláusula WHERE.

En la lista Columna, seleccione CategoryID.

En la lista Operador, seleccione =.

En la lista Origen, seleccione Control.

En Propiedades del parámetro, en la lista Id. de control, seleccione GridView1. La consulta para la segunda cuadrícula obtendrá su valor de parámetro de la selección realizada en la primera cuadrícula.

Haga clic en Agregar y, a continuación, haga clic en Aceptar para cerrar el cuadro de diálogo Agregar cláusula WHERE.

Haga clic en Siguiente.

En la Vista previa, haga clic en Consulta de prueba.

El asistente muestra un cuadro de diálogo en el que se le pide que especifique un valor que se utilizará en la cláusula WHERE.

Escriba 4 en el cuadro y haga clic en Aceptar.

Se muestran los registros de los productos de la categoría 4.

Haga clic en Finalizar.

En el menú Tareas de DetailsView, active Habilitar paginación.

Esto le permitirá desplazarse por cada uno de los registros de producto.

Opcionalmente, en la ventana Propiedades, abra el nodo PagerSettings y seleccione otro valor de Modo.

De manera predeterminada, se pagina por los registros haciendo clic en un número de página, pero también puede seleccionar las opciones para utilizar los vínculos anterior y siguiente.

A continuación, puede probar la combinación de la cuadrícula principal y la vista de detalles.

Para probar la página
Presione CTRL+F5 para ejecutar la página.

En la cuadrícula, seleccione una categoría.

El control DetailsView muestra un producto asociado a esa categoría.

Utilice los vínculos de paginación del control DetailsView para desplazarse a los otros productos de la misma categoría.

En la cuadrícula, seleccione otra categoría.

Revise los productos de esa categoría en el control DetailsView.

Mostrar datos de principal-detalle en páginas independientes
Para la parte final del tutorial, va a crear otra variante: mostrar registros principal-detalle en páginas independientes. Los registros principales se vuelven a mostrar en una cuadrícula que contiene un hipervínculo para cada registro. Cuando los usuarios hagan clic en el hipervínculo, se desplazarán a otra página donde pueden ver los registros de detalle en un control DetailsView que muestra el registro Products completo.

Para mostrar los registros principales
Agregue una nueva página al sitio Web y asígnele el nombre MasterCustomers.aspx.

Cambie a la vista Diseño.

Escriba Clientes en la página y dé al texto formato de encabezado.

Desde el grupo Datos del Cuadro de herramientas, arrastre un control GridView a la página.

Desde el menú Tareas de GridView del control, seleccione en la lista Elegir origen de datos y, a continuación, use el asistente para hacer lo siguiente:

Haga clic en Base de datos.

Conecte a la base de datos Northwind (conexión NorthwindConnectionString).

Recupere las columnas CustomerID, CompanyNamey City de la tabla Customers.

Opcionalmente, en el menú Tareas de GridView, active la casilla de verificación Habilitar paginación.

En el menú Tareas de GridView, elija Editar columnas.

Se muestra el cuadro de diálogo Campos.

Desactive la casilla de verificación Generar campos automáticamente .

En Campos disponibles, elija Campo de hipervínculo, haga clic en Agregar y, a continuación, establezca las propiedades siguientes:

Propiedad Valor
Text
Detalles

DataNavigateUrlFields
CustomerID

Indica que el hipervínculo debe obtener su valor de la columna IdCliente

DataNavigateUrlFormatString
DetailsOrders.aspx?custid={0}

Crea un vínculo que está incluido en el código para desplazarse a la página DetailsOrders.aspx. El vínculo también pasa una variable de cadena de consulta denominada custid cuyo valor se rellenará utilizando la columna a la que se hace referencia en la propiedad DataNavigateUrlFields .


Haga clic en Aceptar para cerrar el cuadro de diálogo Campos.

A continuación, puede crear la página de detalles que acepta un valor de la página principal.

Para crear la página de detalles
Agregue una nueva página al sitio Web y asígnele el nombre DetailsOrders.aspx.

Cambie a la vista Diseño.

Escriba Pedidos en la página y dé al texto formato de encabezado.

Desde la carpeta Datos del Cuadro de herramientas, arrastre un control GridView a la página.

En el menú Tareas de GridView en el control, seleccione Tareas de GridView de la lista Elegir origen de datos

En la lista Seleccionar un tipo de origen de datos, haga clic en Base de datos y, a continuación, haga clic en Aceptar.

En la lista de conexiones, seleccione la conexión que creó y almacenó anteriormente en el tutorial (NorthwindConnectionString).

Haga clic en Siguiente.

El asistente muestra una página donde puede crear una instrucción SQL.

En la lista Nombre, seleccione Pedidos.

En el cuadro Columnas, seleccione OrderID, CustomerID y OrderDate.

Haga clic en WHERE.

En la lista Columnas, seleccione CustomerID.

En la lista Operadores, seleccione =.

En la lista Origen, seleccione QueryString.

Así se especifica que la consulta seleccionará registros en función del valor que se pasa a la página con la cadena de consulta.

En Propiedades del parámetro, en el cuadro Campo de QueryString, escriba custid.

La consulta obtendrá el valor de Id. de cliente de la cadena de consulta, que se crea al hacer clic en el vínculo Detalles de la página MasterCustomers.aspx.

Haga clic en Agregar.

Haga clic en Aceptar para cerrar el cuadro de diálogo Agregar cláusula WHERE.

Haga clic en Siguiente y, a continuación, haga clic en Finalizar para cerrar el asistente.

Desde el nodo Estándar del Cuadro de herramientas, arrastre un control Hyperlink a la página. Establezca su propiedad Text en Volver a clientes y su propiedad NavigateUrl en MasterCustomers.aspx.

Ahora puede probar las páginas principal-detalle relacionadas.

Para probar las páginas
Cambie a la página MasterCustomers.aspx.

Presione CTRL+F5 para ejecutar la página.

Haga clic en el vínculo Detalles de un cliente.

En el explorador se muestra la página DetailsOrders.aspx con el pedido del cliente seleccionado. Observe que la dirección URL del cuadro Dirección del explorador es:


DetailsOrder.aspx?custid=x
donde x es el identificador del cliente que seleccionó.

Haga clic en el vínculo Volver a clientes, seleccione otro cliente, y vuelva a hacer clic en el vínculo Detalles para comprobar que puede ver los pedidos de cualquier cliente.

Pasos siguientes
En este tutorial se han descrito distintas maneras de mostrar los datos de las tablas relacionadas. Todos los escenarios tienen en común lo siguiente: dependen de una consulta con parámetros y los valores de los parámetros se pueden pasar a la consulta automáticamente en tiempo de ejecución. Si lo desea, puede experimentar con otras maneras de utilizar los datos relacionados. Por ejemplo, podría:

Experimentar con parámetros que reciben sus valores de otros orígenes, como una variable Session o una cookie. Para obtener más información, vea Utilizar parámetros con controles de origen de datos.

Ampliar lo que se puede hacer con el control DetailsView de la segunda parte del tutorial. Por ejemplo, puede configurar el control para permitir a los usuarios editar los registros de detalle. Para obtener información detallada, vea Tutorial: Editar e insertar datos en páginas Web con el control de servidor Web DetailsView.

Tutorial: Crear una página Web para mostrar datos de una base de datos de Access

La herramienta de desarrollo Web Microsoft Visual Web Developer permite crear páginas Web que funcionan con datos de diversos orígenes, entre los que se incluyen bases de datos, archivos XML y objetos comerciales. Este tutorial muestra cómo trabajar con los datos de una base de datos de Microsoft Access (archivo .mdb).

Durante este tutorial aprenderá a hacer lo siguiente:

Configurar los permisos para los archivos .mdb.

Establecer conexión con la base de datos que tiene un control AccessDataSource.

Mostrar los datos de Access.

Las bases de datos de Access no tienen la misma capacidad ni el mismo potencial de ampliación que otros tipos de bases de datos, como Microsoft SQL Server. En general, si se crea un sitio Web que va a tener un tráfico ligero o un número limitado de usuarios, una base de datos de Access será suficiente. Sin embargo, si se espera que el sitio Web tenga un rendimiento mayor o un alto número de usuarios, se debe considerar la posibilidad de usar SQL Server u otra base de datos adecuada para los sitios Web de producción.

Requisitos previos
Para poder completar este tutorial, necesitará lo siguiente:

El archivo Northwind.mdb que contiene la versión para Access de la base de datos Northwind de ejemplo.

Si lo prefiere, puede usar otro archivo .mdb de Access y ajustar los pasos del tutorial para que coincidan con las tablas utilizadas.

Microsoft Data Access Components (MDAC) versión 2.7 o posterior.

Si utiliza Microsoft Windows XP o Windows Server 2003, ya dispone de MDAC 2.7. Sin embargo, si utiliza Microsoft Windows 2000, quizás tenga que actualizar la versión de MDAC que ya está instalada en el equipo. Para descargar la actual versión de MDAC, vea el Centro para desarrolladores de acceso a datos y almacenamientoCentro para desarrolladores de acceso a datos y almacenamiento.

Si lo desea, Servicios de Microsoft Internet Information Server (IIS) instalado localmente en el equipo.

Esto permite comprobar que el sitio Web tiene los derechos de usuario adecuados para utilizar una base de datos de Access en un entorno de producción.

Crear el sitio y la página Web
Si ya ha creado un sitio Web en Visual Web Developer completando Tutorial: Crear una página Web básica en Visual Web Developer, puede utilizar ese sitio Web e ir a la sección siguiente. De lo contrario, cree un sitio y una página Web nuevos siguiendo estos pasos.

Para crear un sitio Web de sistema de archivos
Abra Visual Web Developer.

En el menú Archivo, haga clic en Nuevo sitio Web.

Aparece el cuadro de diálogo Nuevo sitio Web.

En Plantillas instaladas de Visual Studio, haga clic en Sitio Web ASP.NET.

En el cuadro Ubicación situado más a la izquierda, haga clic en HTTP.

Haga clic en Examinar.

Aparecerá la página Seleccionar ubicación.

Haga clic en IIS local y, a continuación, en Sitio Web predeterminado.

Haga clic en el icono Crear nueva aplicación Web () y, a continuación, asigne a la nueva aplicación Web el nombre AccessSample.

Haga clic en Abrir.

El cuadro de diálogo Nuevo sitio Web aparece con la ubicación de la nueva aplicación Web en el cuadro Ubicación situado más a la derecha.

En la lista Lenguaje, haga clic en el lenguaje de programación con el que prefiera trabajar.

El lenguaje de programación que elija será el lenguaje predeterminado de su sitio Web, pero también puede establecer el lenguaje de programación de cada página de forma individual.

Haga clic en Aceptar.

Visual Web Developer crea la carpeta y una nueva página denominada Default.aspx. El sitio Web se muestra en el Explorador de soluciones.

Configurar permisos para una base de datos de Access
Un aspecto importante de trabajar con un archivo .mdb de Access es configurar correctamente los permisos. Cuando una aplicación Web utiliza una base de datos de Access, debe tener permiso de lectura en el archivo .mdb para que la aplicación pueda tener acceso a los datos. Además, la aplicación debe tener permiso de escritura en la carpeta que contiene el archivo .mdb. Se necesita permiso de escritura porque Access crea un archivo adicional con la extensión .ldb en el que conserva información relativa a los bloqueos de la base de datos para usuarios simultáneos. El archivo .ldb se crea en tiempo de ejecución.

De manera predeterminada, las aplicaciones Web ASP.NET se ejecutan en el contexto de una cuenta de equipo local denominada ASPNET (para Windows 2000 y Windows XP) o en el contexto de la cuenta NETWORK SERVICE (para Windows Server 2003). Por ejemplo, para Windows 2000 o Windows XP Professional, si el servidor Web se denomina ABCServer, las aplicaciones ASP.NET del equipo ABCServer se ejecutan en el contexto de la cuenta local ABCServer\ASPNET. Por tanto, para usar una base de datos de Access en una aplicación Web ASP.NET, debe configurar la carpeta que contiene la base de datos de Access de manera que tenga permisos de lectura y escritura en la cuenta de usuario ASPNET local.

Cuando se crea un sitio Web en Visual Web Developer, Visual Web Developer crea una carpeta denominada App_Data dentro de la carpeta raíz actual. La carpeta está diseñada para ser un almacén de datos de aplicación, incluidas las bases de datos de Access. ASP.NET utiliza también la carpeta App_Data para almacenar las bases de datos que el sistema mantiene, como la base de datos de suscripción y funciones. Cuando Visual Web Developer crea la carpeta App_Data, otorga permisos de lectura y escritura en la carpeta a la cuenta de usuario ASPNET o NETWORK SERVICE.

Nota
Como medida de seguridad, el servidor Web no suministra los archivos de la carpeta App_data. No almacene ninguna página Web en la carpeta App_Data, porque los usuarios verán un error si solicitan una página de esa carpeta.


En esta parte del tutorial, examinará los permisos de la carpeta App_Data para asegurarse de que funcionará correctamente cuando se ejecute la aplicación.

Para establecer los permisos de la carpeta App_Data
En el Explorador de Windows, desplácese a la carpeta raíz del sitio Web.

La ubicación predeterminada para el nuevo sitio Web es c:\inetpub\wwwroot\AccessSample.

Si la carpeta App_Data no existe aún, créela.

De forma predeterminada, Visual Web Developer crea la carpeta cuando se crea un nuevo sitio Web.

Haga clic con el botón secundario en la carpeta App_Data, haga clic en Propiedades y, a continuación, haga clic en la ficha Seguridad.


En Nombres de grupos o usuarios, busque cualquiera de estas cuentas de usuario:

Si el equipo está ejecutando Windows XP Professional o Windows 2000, busque computer\ASPNET.

Si el equipo está ejecutando Windows Server 2003, busque NETWORK SERVICE.

Compruebe que la cuenta tiene permisos de lectura y escritura en la carpeta App_Data.

Usar datos de Access en una página Web de ASP.NET
Ahora puede utilizar la base de datos de Access en una página Web. Usará un control AccessDataSource.

Para agregar un control AccessDataSource a la página
En Visual Web Developer, en el Explorador de soluciones, haga clic con el botón secundario en la carpeta App_Data y, a continuación, haga clic en Agregar elemento existente.

Busque el archivo Northwind.mdb (u otro archivo .mdb de Access) que desee utilizar en este tutorial.

En la carpeta App_Data, haga clic en el archivo .mdb y, a continuación, en Agregar.

Se agregará el archivo .mdb a la aplicación.

Abra la página Default.aspx y cambie a la vista Diseño.

Desde el grupo Datos del Cuadro de herramientas, arrastre un control AccessDataSource hasta la página.

Si el menú contextual Obtener acceso a tareas de origen de datos no aparece, haga clic con el botón secundario en el control AccessDataSource y, a continuación, haga clic en Mostrar etiqueta inteligente.

En el menú contextual Obtener acceso a tareas de origen de datos, haga clic en Configurar origen de datos.

Aparecerá la ventana Configurar origen de datos - .

En la página Elija una base de datos, en el cuadro Archivo de Microsoft Access Data, escriba ~/App_Data/Northwind.mdb.

Si lo prefiere, haga clic en Examinar y, a continuación, en el cuadro de diálogo Seleccionar base de datos de Microsoft Access, vaya al archivo Northwind.mdb de la carpeta App_Data.

Haga clic en Siguiente.

Aparece la página Configurar instrucción Select.

Haga clic en Especificar columnas de una tabla o vista.

En la lista Nombre, haga clic en Categorías.

Active las casillas de verificación IdCategoría, NombreCategoría y Descripción.

Haga clic en Siguiente.

Aparece la página Consulta de prueba.

Si lo prefiere, haga clic en Consulta de prueba para probar la consulta.

Haga clic en Finalizar.

Desde el grupo Datos del Cuadro de herramientas, arrastre un control GridView hasta la página.

Si el menú contextual Tareas de GridView no aparece, haga clic con el botón secundario en el control GridView y, a continuación, haga clic en Mostrar etiqueta inteligente.

En el menú Tareas de GridView, en el cuadro Elegir origen de datos, haga clic en AccessDataSource1.

Probar la página
Ahora puede ejecutar la página.

Para probar la página
Presione CTRL+F5 para ejecutar la página.

El control GridView muestra todas las filas de datos de la tabla Categorías.

Pasos siguientes
Este tutorial describe los pasos básicos necesarios para trabajar con datos de Access en una página Web de ASP.NET. El modelo de enlace de datos de ASP.NET permite trabajar con datos de diferentes orígenes de la misma manera. Por ejemplo, puede hacer lo siguiente:

Usar controles para filtrar los datos que muestra la página.

Para obtener información detallada, vea Tutorial: Acceso a datos básico en páginas Web.

Actualizar, insertar o eliminar datos en una base de datos de Access.

Para obtener información detallada, vea Tutorial: Editar e insertar datos en páginas Web con el control de servidor Web DetailsView.

Crear páginas para mostrar datos de Access de tablas que tienen una relación principal-detalle.

Para obtener información detallada, vea Tutorial: Crear páginas Web principal-detalle en Visual Studio.

Vea también

Tutorial: Acceso a datos básico en páginas Web

Este tutorial le muestra cómo crear una página simple enlazada a datos mediante controles diseñados especialmente para el acceso a datos.

Durante este tutorial aprenderá a hacer lo siguiente:

Conectarse a una base de datos de Microsoft SQL Server con la herramienta de desarrollo Web Microsoft Visual Web Developer.

Utilizar la característica de arrastrar y colocar para crear elementos de acceso a datos que se puedan utilizar en la página sin código.

Utilizar el control SqlDataSource para administrar el acceso a datos y los enlaces.

Hacer que se muestren datos con el control GridView.

Configurar el control GridView para permitir la ordenación y la paginación.

Crear una consulta filtrada con la que sólo se muestren los registros seleccionados.

Requisitos previos
Para poder completar este tutorial, necesitará lo siguiente:

Obtener acceso a la base de datos Northwind de SQL Server. Para obtener información sobre cómo descargar e instalar la base de datos de ejemplo Northwind de SQL Server, vea Installing Sample Databases en el sitio Web de Microsoft SQL Server.

Nota
Si necesita información sobre cómo iniciar sesión en el equipo en el que se ejecuta SQL Server, póngase en contacto con el administrador del servidor.


Microsoft Data Access Components (MDAC) versión 2.7 o posterior.

Si utiliza Microsoft Windows XP o Windows Server 2003, ya dispone de MDAC 2.7. Sin embargo, si utiliza Microsoft Windows 2000, quizá tenga que actualizar la versión de MDAC que ya está instalada en el equipo. Para descargar la actual versión de MDAC, vea el Centro para desarrolladores de acceso a datos y almacenamiento.

Crear el sitio Web
Si ya ha creado un sitio Web en Visual Web Developer siguiendo los pasos descritos en Tutorial: Crear una página Web básica en Visual Web Developer, puede utilizar ese sitio Web e ir a la sección siguiente. De lo contrario, cree un sitio Web y una página nuevos siguiendo estos pasos.

Para crear un sitio Web del sistema de archivos
Abra Visual Web Developer.

En el menú Archivo, haga clic en Nuevo Sitio Web.

Aparece el cuadro de diálogo Nuevo sitio Web.

En Plantillas instaladas de Visual Studio, haga clic en Sitio Web de ASP.NET.

En el cuadro Ubicación situado en el extremo derecho, escriba el nombre de la carpeta en la que desea conservar las páginas del sitio Web.

Por ejemplo, escriba el nombre de carpeta C:\WebSites.

En la lista Lenguaje, haga clic en el lenguaje de programación con el que prefiera trabajar.

Haga clic en Aceptar.

Visual Web Developer crea la carpeta y una nueva página denominada Default.aspx.

Agregar un control GridView para mostrar datos
Para que se muestren datos en una página Web ASP.NET, necesita lo siguiente:

Una conexión con un origen de datos (como, por ejemplo, una base de datos).

En el procedimiento siguiente creará una conexión a la base de datos Northwind de SQL Server.

Un control de origen de datos en la página con el que se ejecuten las consultas y se administren los resultados de éstas.

Un control en la página para mostrar los datos.

En el procedimiento siguiente se mostrarán los datos en un control GridView. El control GridView obtendrá sus datos del control SqlDataSource.

Puede agregar estos elementos al sitio Web por separado. Sin embargo, para empezar resulta más fácil visualizar la presentación de datos con el control GridView y después utilizar asistentes para crear la conexión y el control del origen de datos. En el siguiente procedimiento se explica cómo crear los tres elementos que necesita para mostrar datos en la página.

Para agregar y configurar un control GridView que permita mostrar datos
En Visual Web Developer, cambie a la vista Diseño.

Arrastre un control GridView desde el grupo Datos del Cuadro de herramientas hasta la página.

Si el menú contextual Tareas de GridView no aparece, haga clic con el botón secundario del mouse (ratón) en el control GridView y haga clic en Mostrar etiqueta inteligente.

En el menú Tareas de GridView, en la lista Elegir origen de datos, haga clic en .

Aparece el cuadro de diálogo Configuración de origen de datos.


Haga clic en Base de datos.

Así especifica que desea obtener datos de una base de datos que admite instrucciones SQL. Esto incluye a SQL Server y a otras bases de datos compatibles con OLE DB.

En el cuadro Especificar un id. para el origen de datos aparece un nombre de control de origen de datos predeterminado (SqlDataSource1). Puede dejar ese nombre.

Haga clic en Aceptar.

Aparece el asistente para orígenes de datos, que muestra una página en la que puede elegir una conexión.


Haga clic en Nueva conexión.

En el cuadro de diálogo Elegir origen de datos, en Origen de datos, haga clic en Microsoft SQL Server y, a continuación, haga clic en Continuar.

Aparecerá el cuadro de diálogo Agregar conexión.

En el cuadro Nombre de servidor, escriba el nombre del servidor SQL Server que desea utilizar.


Por lo que respecta a las credenciales de inicio de sesión, seleccione la opción que resulte apropiada para el acceso a la base de datos de SQL Server (seguridad integrada o id. y contraseña específicos) y, si es necesario, especifique un nombre de usuario y una contraseña.

Haga clic en Seleccionar o escribir nombre de base de datos y escriba Northwind.

Haga clic en Probar conexión y, cuando tenga la seguridad de que funciona, haga clic en Aceptar.

Aparece el asistente Configurar origen de datos - y se rellena la información de la conexión.

Haga clic en Siguiente.

Aparece el asistente, que muestra una página que le permite almacenar la cadena de conexión en el archivo de configuración. Si se almacena la cadena de conexión en el archivo de configuración, se tienen dos ventajas:

Es más seguro que el almacenamiento de la cadena de conexión en la página.

Puede reutilizar la misma cadena de conexión en varias páginas.

Asegúrese de que está activada la casilla de verificación Sí, guardar esta conexión como y haga clic en Siguiente. (Puede dejar el nombre predeterminado de la cadena de conexión, NorthwindConnectionString).

Aparece el asistente, que muestra una página en la que puede especificar los datos que desea obtener de la base de datos.

En Especificar columnas de una tabla o vista, en el cuadro Nombre, haga clic en Customers.

Bajo Columnas, active las casillas de verificación CustomerID, CompanyName y City.

Aparece el asistente, que en un cuadro situado en la parte inferior de la página muestra la instrucción SQL que se está creando.

Nota
El asistente le permite especificar criterios de selección (una cláusula WHERE) y otras opciones de la consulta SQL. Para esta parte del tutorial creará una instrucción simple sin opciones de selección ni ordenación.


Haga clic en Siguiente.

Haga clic en Consulta de prueba para asegurarse de que se obtienen los datos que desea.

Haga clic en Finalizar.

El asistente se cierra y vuelve a mostrarse la página. Al ejecutar el asistente, se han realizado dos tareas:

El asistente ha creado y configurado un control SqlDataSource (con el nombre (SqlDataSource1), que incorpora la información de conexión y consulta que especificó.

El asistente ha enlazado el control GridView al objeto SqlDataSource. Por consiguiente, el control GridView mostrará datos devueltos por el control SqlDataSource.

Si ve las propiedades para el control SqlDataSource, podrá observar que el asistente ha creado los valores para las propiedades ConnectionString y SelectQuery.

Nota
Puede cambiar con facilidad la apariencia del control GridView. En la vista Diseño, haga clic con el botón secundario del mouse (ratón) en el control GridView y, a continuación, seleccione Mostrar etiqueta inteligente. En el menú Tareas de GridView, haga clic en Formato automático y, a continuación, aplique un esquema.


Probar la página
Ahora puede ejecutar la página.

Para probar la página
Presione CTRL+F5 para ejecutar la página.

La página aparece en el explorador. El control GridView muestra todas las filas de datos de la tabla Customers.

Cierre el explorador.

Agregar ordenación y paginación
Puede agregar posibilidades de ordenación y paginación al control GridView sin escribir código.

Para agregar ordenación y paginación
En la vista Diseño, haga clic con el botón secundario del mouse (ratón) en el control GridView y, a continuación, seleccione Mostrar etiqueta inteligente.

En el menú contextual Tareas de GridView, active la casilla de verificación Habilitar ordenación.

Los encabezados de columna del control GridView cambian a vínculos.

En el menú contextual Tareas de GridView, active la casilla de verificación Habilitar paginación.

Se agrega un pie de página al control GridView con vínculos de número de página.

También puede utilizar Propiedades para cambiar el valor de la propiedad PageSize de 10 a un tamaño de página menor.

Presione CTRL+F5 para ejecutar la página.

Podrá hacer clic en un encabezado de columna para ordenar los datos por el contenido de esa columna. Si en el origen de datos hay más registros de los que permite el tamaño de página del control GridView, podrá utilizar los vínculos de exploración de páginas situados en la parte superior del control GridView para desplazarse entre las páginas.

Cierre el explorador.

Agregar filtrado
A menudo deseará que en la página sólo se muestren datos seleccionados. En esta parte del tutorial modificará la consulta para el control SqlDataSource de manera que los usuarios puedan seleccionar registros de clientes de una ciudad determinada.

En primer lugar, utilizará un control TextBox para crear un cuadro de texto en el que los usuarios puedan escribir el nombre de una ciudad. A continuación, cambiará la consulta para incluir un filtro parametrizado (cláusula WHERE). Como parte de ese proceso, creará un elemento de parámetro para el control SqlDataSource. El elemento de parámetro establece cómo obtendrá el control SqlDataSource el valor para su consulta parametrizada; concretamente, del cuadro de texto.

Cuando finalice esta parte del tutorial, la página podría tener una apariencia similar a la siguiente en la vista Diseño.


Para agregar el cuadro de texto que permite especificar una ciudad
Desde el grupo Estándar del Cuadro de herramientas, arrastre a la página un control TextBox y un control Button.

El control Button sólo se utiliza para devolver la página al servidor. En este caso no tendrá que escribir código.

En Propiedades, para el control TextBox, establezca ID como textCity.

Si lo desea, escriba Ciudad o un texto similar delante del cuadro de texto, como título.

En Propiedades para el control Button, establezca Text como Enviar.

Ahora puede modificar la consulta para que incluya un filtro.

Para modificar la consulta con un filtro parametrizado
Haga clic con el botón secundario del mouse (ratón) en el control SqlDataSource y, a continuación, seleccione Mostrar etiqueta inteligente.

En el menú Tareas de SqlDataSource, haga clic en Configurar origen de datos.

Aparecerá el asistente Configurar origen de datos - .

Haga clic en Siguiente.

El asistente muestra el comando SQL configurado actualmente para el control SqlDataSource.

Haga clic en WHERE.

Aparecerá la página Agregar cláusula WHERE.

En la lista Columna, haga clic en Ciudad.

En la lista Operador, haga clic en =.

En la lista Origen, haga clic en Control.

En Propiedades del parámetro, en la lista Id. de control, haga clic en textCity.


En los cinco pasos anteriores se especifica que con la consulta se obtendrá el valor de búsqueda de Ciudad del control TextBox que agregó en el procedimiento anterior.

Haga clic en Agregar.

La cláusula WHERE que ha creado aparece en un cuadro en la parte inferior de la página.

Haga clic en Aceptar para cerrar la página Agregar cláusula WHERE.

En el asistente Configurar origen de datos - , haga clic en Siguiente.

En la página Consulta de prueba, haga clic en Consulta de prueba.

Aparece el asistente, con la página Editor de valores del parámetro, en la que se solicita un valor para utilizarlo en la cláusula WHERE.

En el cuadro Valor, escriba Londres y, a continuación, haga clic en Aceptar.

Aparecen los registros de los clientes de Londres.

Haga clic en Finalizar para cerrar el asistente.

Ahora puede probar el filtrado.

Para probar el filtrado
Presione CTRL+F5 para ejecutar la página.

En el cuadro de texto, escriba Londres y, a continuación, haga clic en Enviar.

Aparece una lista de clientes de la ciudad de Londres en el control GridView.

Pruebe con otras ciudades, como Buenos Aires y Berlín.

Pasos siguientes
El acceso a datos constituye un aspecto importante en muchas aplicaciones Web, y en este tutorial sólo se da una ligera idea de lo que se puede hacer con los datos en las páginas Web. Quizás desee probar otras características relacionadas con el acceso a datos. Por ejemplo, puede hacer lo siguiente:

Trabajar con Microsoft Access en lugar de con SQL Server. (No se puede utilizar dependencia de caché de SQL con Access).

Para obtener información detallada, vea Tutorial: Crear una página Web para mostrar datos de una base de datos de Access.

Editar e insertar registros.

Para obtener información detallada, vea Tutorial: Editar e insertar datos en páginas Web con el control de servidor Web DetailsView.

Trabajar con registros que tienen una relación de principal-detalle.

Para obtener información detallada, vea Tutorial: Crear páginas Web principal-detalle en Visual Studio.

Crear un componente de nivel medio (comercial) que se encargue del acceso a datos y, a continuación, utilizar ese recurso como origen de datos en una página.

Para obtener información detallada, vea Tutorial: Enlace de datos a un objeto comercial personalizado.

Tutorial: Crear y usar páginas principales ASP.NET en Visual Web Developer

Este tutorial muestra cómo crear una página principal y varias páginas de contenido. Las páginas principales permiten crear un diseño de página (una plantilla) y, a continuación, crear páginas independientes con contenido que se combina con la página principal en tiempo de ejecución. Para obtener más información sobre las páginas principales, vea Información general sobre las páginas principales ASP.NET.

Las tareas ilustradas en este tutorial incluyen:

Crear una página principal en Microsoft Visual Web Developer.

Crear una página ASP.NET con contenido que desea mostrar en la página principal.

Ejecutar las páginas principales para mostrar contenido diferente.

Seleccionar una página principal en tiempo de ejecución.

Requisitos previos
Para poder completar este tutorial, necesitará:

Visual Web Developer (Visual Studio).

.NET Framework.

Opcionalmente, un archivo .jpg, .gif u otro archivo gráfico que pueda utilizar como logotipo en su página principal. Se recomienda que el logotipo no tenga más de 48 píxeles de ancho. Sin embargo, mostrar un logotipo es opcional y el tamaño exacto del gráfico no es importante para el tutorial.

Crear un sitio Web
Si ya ha creado un sitio Web en Visual Web Developer (por ejemplo, siguiendo los pasos de Tutorial: Crear una página Web básica en Visual Web Developer), puede utilizar ese sitio Web e ir a la sección siguiente, "Crear la página principal". De lo contrario, cree un sitio Web y una página nuevos siguiendo estos pasos.

Para crear un sitio Web del sistema de archivos
Abra Visual Web Developer.

En el menú Archivo, haga clic en Nuevo sitio Web.

Aparece el cuadro de diálogo Nuevo sitio Web.

En Plantillas instaladas de Visual Studio, haga clic en Servicio Web ASP.NET.

En el cuadro Ubicación, escriba el nombre de la carpeta dónde desea guardar las páginas de su sitio Web.

Por ejemplo, escriba el nombre de carpeta C:\WebSites.

En la lista Lenguaje, haga clic en el lenguaje de programación con el que prefiera trabajar.

Haga clic en Aceptar.

Visual Web Developer crea la carpeta y una nueva página denominada Default.aspx.

Crear la página principal
La página principal es la plantilla que define la apariencia que tendrán las páginas. En esta sección, creará primero una página principal. A continuación, utilizará una tabla para diseñar la página principal con un menú, un logotipo y un pie que aparecerán en todas las páginas del sitio. También trabajará con un marcador de posición de contenido, que es un área de la página que se puede reemplazar por información en una página de contenido.

Para crear la página principal
En el Explorador de soluciones, haga clic con el botón secundario del mouse (ratón) en el nombre del sitio Web y, a continuación, seleccione Agregar nuevo elemento.

En Plantillas instaladas de Visual Studio, haga clic en Página principal.

En el cuadro Nombre, escriba Master1.

Active la casilla de verificación Colocar el código en un archivo independiente.

Nota
En este tutorial se supone que está utilizando archivos de código subyacente para todas las páginas. Si utiliza una página ASP.NET de un único archivo, el código que se muestra en el tutorial funcionará, pero aparecerá en la vista Código fuente, no en un archivo de código independiente.


En la lista Lenguaje, haga clic en el lenguaje de programación con el que prefiera trabajar y, a continuación, haga clic en Agregar.

La nueva página principal se abre en la vista Código fuente.

En la parte superior de la página hay una declaración @ Master en lugar de la declaración @ Page que normalmente se encuentra en la parte superior de las páginas ASP.NET. El cuerpo de la página contiene un control , que es el área de la página principal donde se combinará el contenido reemplazable de las páginas en tiempo de ejecución. En el tutorial, trabajará después más con el marcador de posición de contenido.

Diseñar la página principal
La página principal define la apariencia de las páginas del sitio. Puede contener cualquier combinación de texto estático y controles. Una página principal también contiene uno o más marcadores de posición de contenido que indican dónde aparecerá el contenido dinámico cuando se muestren las páginas.

En este tutorial, utilizará una tabla como ayuda para colocar los elementos en la página. Empezará por crear una tabla de diseño para alojar los elementos de la página principal. Más adelante en esta sección colocará el control de marcador de posición de contenido que ya está en la página.

Para crear una tabla de diseño para la página principal
Con el archivo Master1.master seleccionado en la vista Código fuente, establezca el esquema de destino para la validación en Microsoft Internet Explorer 6.0. Para establece este valor, puede utilizar la lista desplegable de la barra de herramientas o seleccionar Opciones en el menú Herramientas y, a continuación, hacer clic en Validación.

Cambie a la vista Diseño.

En la lista desplegable de la parte superior de la ventana Propiedades, seleccione DOCUMENTO y, a continuación, establezca BgColor en un color distintivo, por ejemplo azul.

El color que selecciona no es importante. Más adelante en este tutorial creará una segunda página principal sin color, que contrastará con lo que seleccione aquí.

Haga clic en la página donde desea colocar la tabla de diseño.

Nota
No coloque la tabla de diseño en el control ContentPlaceHolder.


En el menú Diseño, haga clic en Insertar tabla.

En el cuadro de diálogo Insertar tabla, haga clic en Plantilla. En la lista haga clic en Encabezado, pie de página y lado y, a continuación, haga clic en Aceptar.

La plantilla define la organización de filas y celdas en la tabla. La plantilla que ha seleccionado crea tres filas y la fila central se divide en dos celdas.

Configure las opciones siguientes:

En la fila central, haga clic en la columna situada más a la izquierda y, a continuación, establezca su Ancho en 48 en la ventana Propiedades.

Haga clic en la fila superior y, a continuación, establezca su Alto en 48 en la ventana Propiedades.

Haga clic en la fila inferior y, a continuación, establezca su Alto en 48 en la ventana Propiedades.

Nota
Para establecer el alto y ancho, arrastre los bordes de la celda o seleccione la celda y establezca los valores en la ventana Propiedades.


Seleccione todas las celdas de la tabla y establezca BgColor en un color diferente del color de fondo y VAlign en superior.

Después de diseñar la tabla, puede agregar el contenido a la página principal que aparecerá en todas las páginas. Agregará un mensaje de copyright como pie de página y agregará un menú. Si tiene un gráfico de logotipo disponible, también puede agregarlo.

Para agregar contenido estático a la página principal
Haga clic en la celda inferior y, a continuación, escriba el texto del pie de página, por ejemplo Copyright 2005 Contoso Inc.

En el Cuadro de herramientas, arrastre un control Menu desde el grupo de controles Exploración hasta la celda superior.

Cree un menú siguiendo estos pasos:

Establezca la propiedad Menu del control Orientation en Horizontal.

Haga clic en la etiqueta inteligente en el control Menu y haga clic en Editar elementos de menú en el cuadro de diálogo Tareas de menú.

En Elementos, haga clic dos veces en el icono Agregar un nodo raíz para agregar dos elementos de menú:

Haga clic en el primer nodo y, a continuación, establezca la propiedad Text en Home y la propiedad NavigateUrl en Home.aspx.

Haga clic en el segundo nodo y, a continuación, establezca la propiedad Text en About y la propiedad NavigateUrl en About.aspx.

Haga clic en Aceptar para cerrar el cuadro de diálogo Editor de elementos de menú.

Si tiene un archivo gráfico disponible para utilizarlo como logotipo, siga estos pasos para colocarlo en la página principal:

En el Explorador de soluciones, haga clic con el botón secundario del mouse en el nombre del sitio Web y, a continuación, seleccione Agregar elemento existente.

Desplácese a su archivo gráfico, selecciónelo y, a continuación, haga clic en Agregar.

En el Cuadro de herramientas, arrastre un control Image desde el grupo Estándar hasta la columna central izquierda de la tabla.

Establezca la propiedad ImageUrl del control Image en el nombre del archivo gráfico.

Ahora puede colocar el marcador de posición de contenido para especificar dónde puede mostrar contenido la página principal en tiempo de ejecución.

Para agregar un marcador de posición de contenido
Arrastre el control ContentPlaceHolder a la celda central derecha.

La propiedad ID del control es ContentPlaceholder1. Puede dejar este nombre o cambiarlo. Si cambia el nombre, anótelo porque necesitará recordarlo más adelante.

Guarde la página.

Crear contenido para la página principal
La página principal proporciona la plantilla para el contenido. El contenido de la página principal se define creando una página ASP.NET que se asocia a la página principal. La página de contenido es un formulario especializado de una página ASP.NET que incluye sólo el contenido que se va a combinar con la página principal. En la página de contenido, agregará el texto y los controles que desee mostrar cuando los usuarios soliciten la página.

En este tutorial, agregará dos páginas con contenido para la página principal. La primera es una página de inicio y la segunda es una página Acerca de.

Para crear la página de inicio
En el Explorador de soluciones, haga clic con el botón secundario del mouse en el nombre del sitio Web y, a continuación, seleccione Agregar nuevo elemento.

En Plantillas instaladas de Visual Studio, haga clic en Web Forms.

En el cuadro Nombre, escriba Home.

En la lista Lenguaje, haga clic en el lenguaje de programación con el que prefiera trabajar.

Active la casilla de verificación Seleccionar la página principal y, a continuación, haga clic en Agregar.

Aparece el cuadro de diálogo Seleccionar la página principal.

Haga clic en Master1.master y en Aceptar.

Se crea un nuevo archivo .aspx. La página contiene una directiva @ Page que asocia la página actual a la página principal seleccionada con el atributo MasterPageFile, tal como se muestra en el ejemplo de código siguiente.

Visual Basic
<%@ Page Language="VB" MasterPageFile="~/Master1.master" ... %>

C#
<%@ Page Language="C#" MasterPageFile="~/Master1.master" ... %>
La página también contiene un elemento con el que trabajará luego.

Una página de contenido no tiene los elementos usuales que constituyen una página ASP.NET, como html, body o form. En su lugar, el contenido que se desea mostrar en la página principal se agrega reemplazando las áreas de marcador de posición creadas en dicha página.

Para agregar contenido a la página de inicio
Cambie a la vista Diseño.

El área que creó como un control ContentPlaceHolder en la página principal se muestra como un control Content en la nueva página de contenido. El resto del contenido de la página principal se muestra para que pueda ver el diseño, pero aparece atenuado porque no puede cambiarlo mientras está editando una página de contenido.

En la lista desplegable de la ventana Propiedades, haga clic en DOCUMENTO y, a continuación, establezca Título en Contoso Home Page.

Puede establecer el título de cada página de contenido de forma independiente a fin de que se muestre el título correcto en el explorador cuando el contenido se combine con la página principal. La información del título se almacena en la directiva @ Page de la página de contenido.

En el control Content, escriba Welcome to the Contoso Web Site, seleccione el texto y, a continuación, para darle el formato Encabezado 1, seleccione el texto y haga clic en Encabezado 1 en la lista desplegable Formato del bloque situada sobre el Cuadro de herramientas.

Presione ENTRAR para crear una nueva línea en blanco en el control Content y, a continuación, escriba Thank you for visiting our site.

El texto que agrega aquí no es importante; puede escribir cualquier texto que le ayude a reconocer que es la página de inicio.

Guarde la página.

Puede crear la página Acerca de tal como creó la página de inicio.

Para crear la página Acerca de
Utilice los mismos pasos que al crear la página de inicio para agregar una nueva página de contenido denominada About.aspx.

Asegúrese de asociar la nueva página a la página Master1.master como hizo con la página de inicio.

Cambie el título de la página a Contoso About Page.

En el área de contenido, escriba About Contoso y, a continuación, para dar formato al texto como Encabezado 1, seleccione el texto y haga clic en Encabezado 1 en la lista desplegable Formato del bloque situada sobre el Cuadro de herramientas.

Presione ENTRAR para crear una nueva línea y, a continuación, escriba Since 1982, Contoso has provided high-quality software services.

Guarde la página.

Probar las páginas
Puede probar las páginas ejecutándolas tal como haría con cualquier página ASP.NET.

Para probar las páginas
Cambie a la página Home.aspx y, a continuación, presione CTRL+F5.

ASP.NET combina el contenido de la página Home.aspx con el diseño de la página Master1.master en una sola página y muestra el resultado en el explorador. Observe que la dirección URL de la página es Home.aspx; no hay ninguna referencia en el explorador a la página principal.

Haga clic en el vínculo About.

Se muestra la página About.aspx. También se combina con la página Master1.master.

Hacer referencia a miembros de la página principal
El código de las páginas de contenido puede hacer referencia a miembros de la página principal, como propiedades o métodos públicos y controles de la página principal. En esta parte del tutorial, creará una propiedad en la página principal y, a continuación, utilizará el valor de la propiedad en las páginas de contenido. La premisa es que el nombre de la compañía para el sitio Web está almacenado como una propiedad en la página principal y cualquier referencia a él en las páginas de contenido se basa en la propiedad de la página principal.

El primer paso es agregar una propiedad a la página principal.

Para agregar una propiedad a la página principal
Cambie a la página Master1.master o ábrala.

En el Explorador de soluciones, haga clic con el botón secundario del mouse en Master1.master y seleccione Ver código para abrir el editor de código.

Nota
De forma predeterminada, Visual Web Developer crea páginas que utilizan el modelo de código subyacente. Si lo prefiere, puede crear el código utilizando el modelo de un solo archivo. Para obtener más información, vea Modelo de código de las páginas Web ASP.NET.


En la definición de clase, escriba el código siguiente.

Visual Basic
Public Property CompanyName() As String
Get
Return CType(ViewState("companyName"), String)
End Get
Set(ByVal Value As String)
ViewState("companyName") = Value
End Set
End Property

C#
public String CompanyName
{
get { return (String) ViewState["companyName"]; }
set { ViewState["companyName"] = value; }
}
El código crea una propiedad denominada CompanyName para la página principal. El valor se almacena en estado de vista para que se conserve entre las devoluciones de datos.

En la definición de clase (pero no dentro del código de la propiedad), agregue el código siguiente.

Visual Basic
Sub Page_Init(ByVal sender As Object, ByVal e As EventArgs) _
Handles Me.Init
Me.CompanyName = "Contoso"
End Sub

C#
void Page_Init(Object sender, EventArgs e)
{
this.CompanyName = "Contoso";
}
En este ejemplo, integrará el valor de la propiedad CompanyName en la página.

Ahora puede modificar la página de contenido para utilizar la propiedad CompanyName de la página principal.

Para hacer referencia a la propiedad CompanyName en la página de contenido
Cambie a la página Home.aspx o ábrala.

Cambie a la vista Código fuente.

En la parte superior de la página, bajo la directiva @ Page, agregue la directiva @ MasterType siguiente:


<%@ MasterType virtualpath="~/Master1.master" %>
La directiva enlaza la propiedad Master de la página de contenido, que utilizará en breve, a la página Master1.master.

Cambie a la vista Diseño.

En el control Content, cambie el texto a Welcome to the Web site of.

En el Cuadro de herramientas, arrastre un control Label desde el grupo Estándar hasta el control Content y coloque después el texto estático siguiente:

Welcome to the Web site of [Etiqueta]

Establezca la propiedad ID del control Label en CompanyName.

En el Explorador de soluciones, haga clic con el botón secundario del mouse en Home.aspx y seleccione Ver código para abrir el editor de código.

En la definición de clase, agregue el código siguiente.

Visual Basic
Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) _
Handles Me.Load
CompanyName.Text = Master.CompanyName
End Sub

C#
void Page_Load(Object sender, EventArgs e)
{
CompanyName.Text = Master.CompanyName;
}
La propiedad Master de la página de contenido devuelve una referencia a la página principal tal como se define en la directiva @ MasterType que agregó en el paso 3.

Ahora puede probar la página de contenido para asegurarse de que hace referencia correctamente a la propiedad CompanyName de la página principal.

Para probar la referencia a la propiedad de la página principal
Cambie a la página Home.aspx o ábrala y, a continuación, presione CTRL+F5 para ejecutarla.

La página se muestra en el explorador con el texto Welcome to the Web site of Contoso

Cierre el explorador.

Cambie a la página de código subyacente Master1.master o ábrala.

Cambie el controlador Page_Init para asignar un nombre de compañía diferente a la propiedad, como en el ejemplo de código siguiente.

Visual Basic
Sub Page_Init(ByVal sender As Object, ByVal e As EventArgs) _
Handles Me.Init
Me.CompanyName = "New Company Name"
End Sub

C#
void Page_Init(Object sender, EventArgs e)
{
this.CompanyName = "New Company Name";
}
Cambie a la página Home.aspx y, a continuación, presione CTRL+F5 para ejecutarla de nuevo.

Esta vez, el nombre de la compañía actualizado aparece en la página.

Notas
Hay otros aspectos que debe tener en cuenta al trabajar con una página principal:

En una aplicación real, probablemente almacenaría la información similar al nombre de la compañía en el archivo de configuración y la leería directamente en las páginas de contenido. Sin embargo, el escenario descrito aquí proporciona una ilustración simple de cómo hacer referencia a los miembros de página principal en páginas de contenido.

Incluso puede tener acceso a los miembros de la página principal sin utilizar una directiva @ MasterType. Sin embargo, para hacerlo debe convertir la propiedad System.Web.UI.Page.Master en el tipo de página principal apropiado (la propiedad Master es null si una página no tiene su correspondiente página principal). Para obtener más información, vea Trabajar con las páginas principales ASP.NET mediante programación.

Puede hacer referencia a los controles en la página principal utilizando el método Master.FindControls. Para obtener más información, vea Trabajar con las páginas principales ASP.NET mediante programación.

Cambiar las páginas principales dinámicamente
Bajo ciertas circunstancias, quizás desee poder cambiar las páginas principales dinámicamente; es decir, utilizar código que establezca la página principal para una página de contenido. Por ejemplo, es posible que desee permitir a los usuarios seleccionar entre varios diseños y establecer la página principal según sus preferencias.

En esta parte del tutorial, agregará una segunda página principal al sitio Web y creará botones que permitan al usuario cambiar entre dos páginas principales. Como ambas páginas principales serán muy similares, hará una copia de la primera y la modificará para que actúe como la segunda.

Para realizar una copia de la página principal
En el Explorador de soluciones, haga clic con el botón secundario del mouse en Master1.master y, a continuación, haga clic en Copiar.

Haga clic con el botón secundario del mouse en el nombre del sitio Web y, a continuación, haga clic en Pegar.

Se agrega al sitio Web una página principal con el nombre Copia de master1.master.

Haga clic con el botón secundario del mouse en Copia de master1.master, haga clic en Cambiar nombre y, a continuación, asigne el nombre Master2.master a la nueva página principal.

Abra Master2.master y, en la directiva @ Master, cambie Master1 a Master2.

La directiva de página finalizada tendrá una apariencia similar al ejemplo de código siguiente.

Visual Basic
<%@ Master Language="VB" CodeFile="Master2.master.vb" Inherits="Master2" %>

C#
<%@ Master Language="C#" CodeFile="Master2.master.cs" Inherits="Master2" %>
Cambie a la vista Diseño.

En la ventana Propiedades, en la lista desplegable de la parte superior, haga clic en DOCUMENTO.

Borre la propiedad BgColor.

La nueva página principal tendrá la misma apariencia y funcionamiento que Master1.master, pero no tendrá ningún color de fondo.

Abra el archivo de código de Master2.master y cambie el nombre de la clase en el archivo de código subyacente de la página principal de Master1 a Master2 de manera que coincida con el valor del atributo Inherits de la directiva <%@ Master %> de la página.

El código debe tener la apariencia del ejemplo siguiente.

Visual Basic
Partial Class Master2

C#
public partial class Master2 : System.Web.UI.MasterPage
El paso siguiente es agregar a cada página principal un botón que permita al usuario seleccionar la página principal alternativa.

Para agregar los botones para seleccionar una página principal alternativa
Cambie a la página Master2.master o ábrala.

En el Cuadro de herramientas, arrastre un control LinkButton desde el nodo Estándar hasta la página y colóquelo bajo el menú de la celda superior de la tabla.

Establezca la propiedad Text del botón en Colorful.

Haga doble clic en el botón a fin de crear un controlador para su evento Click y, a continuación, agregue el código resaltado siguiente.

Visual Basic
Protected Sub LinkButton1_Click(ByVal sender As Object, ByVal e As EventArgs)_
Handles LinkButton1.Click
Session("masterpage") = "Master1.master"
Response.Redirect(Request.Url.ToString())
End Sub

C#
void LinkButton1_Click(Object sender, EventArgs e)
{
Session["masterpage"] = "Master1.master";
Response.Redirect(Request.Url.ToString());
}
El código carga el nombre de archivo de la página principal alternativa en una variable de sesión persistente y, a continuación, vuelve a cargar la página actual. (La propiedad Url devuelve un objeto Uri que hace referencia a la página actual.) En un momento, creará el código de la página de contenido que utilizará el nombre de la página principal.

Cambie a la página Master1.master o ábrala en la vista Diseño.

Agregue un control LinkButton como hizo en los pasos 1 y 2, y establezca su propiedad Text en Plain.

Haga doble clic en el botón Plain a fin de crear un controlador para su evento Click y, a continuación, agregue el código resaltado siguiente.

Visual Basic
Protected Sub LinkButton1_Click(ByVal sender As Object, ByVal e As EventArgs)_
Handles LinkButton1.Click
Session("masterpage") = "Master2.master"
Response.Redirect(Request.Url.ToString())
End Sub

C#
void LinkButton1_Click(Object sender, EventArgs e)
{
Session["masterpage"] = "Master2.master";
Response.Redirect(Request.Url.ToString());
}
Este código es igual que el del botón de la página Master2.master, excepto en que carga una página principal alternativa.

Ahora va a escribir el código de la página de contenido que cargará dinámicamente la página principal seleccionada por el usuario.

Para escribir el código para seleccionar dinámicamente la página principal
Cambie a la página About.aspx o ábrala.

Nota
La página de inicio que ya ha creado contiene una directiva @ MasterType que la enlaza efectivamente a una página principal única (Master1.master). Por tanto, no podrá asignar páginas principales dinámicamente a la página de inicio y, en cambio, trabajará con otras páginas que ha creado.


En el Explorador de soluciones, haga clic con el botón secundario del mouse en About.aspx y seleccione Ver código para abrir el editor de código.

En la definición de clase, agregue el código siguiente.

Visual Basic
Sub Page_PreInit(ByVal sender As Object, ByVal e As EventArgs) _
Handles Me.PreInit
If Not Session("masterpage") Is Nothing Then
Me.MasterPageFile = CType(Session("masterpage"), String)
End If
End Sub

C#
void Page_PreInit(Object sender, EventArgs e)
{
if(Session["masterpage"] != null)
{
this.MasterPageFile = (String) Session["masterpage"];
}
}
El código establece el valor de la propiedad MasterPageFile de la página actual en el valor de la variable de sesión, si hay alguno. Este código se debe ejecutar en el controlador Page_PreInit; no se puede ejecutar en un controlador que se produzca después que Page_PreInit (por ejemplo, en el controlador Page_Init), porque la página principal debe configurarse para poder crear una instancia de ella antes de que tenga lugar cualquier inicialización posterior.

Ahora puede probar las páginas principales dinámicas.

Para probar las páginas principales dinámicas
En la página About.aspx, presione CTRL+F5 para ejecutar la página.

La página se muestra en el explorador combinada con su página principal predeterminada, Master1.master.

Haga clic en el vínculo Plain.

Se vuelve a mostrar la página, esta vez combinada con Master2.master, que no tiene ningún color de fondo.

Haga clic en el vínculo Colorful.

La página se muestra de nuevo utilizando Master1.master.

Notas
Hay otros aspectos que debe tener en cuenta al trabajar con páginas principales dinámicas:

El escenario de esta sección para cambiar las páginas principales se ha simplificado para mantener el tutorial centrado en las páginas principales. En una aplicación real, probablemente mostraría varios diseños y, a continuación, almacenaría las preferencias del usuario utilizando perfiles. Para obtener información detallada, vea Información general sobre las propiedades de perfil de ASP.NET.

Puede configurar el sitio Web para que todas las páginas utilicen la misma página principal. Quizás tenga unas cuantas páginas que deberían utilizar una página principal alternativa; puede configurarlas en el código de una forma similar a la mostrada en esta sección del tutorial. Para obtener más información, vea "Ámbito de las páginas principales" en Información general sobre las páginas principales ASP.NET.

Tiene que agregar el código de la página Home.aspx a cada página donde desee reemplazar la página principal predeterminada.

Pasos siguientes
Este tutorial muestra la funcionalidad básica de páginas principales. Quizás desee probar otras características de las páginas principales. Por ejemplo, podría:

Crear páginas principales que tienen varios marcadores de posición de contenido. Puede llenar a continuación uno o más marcadores de posición de contenido para cada página que muestre.

Definir marcadores de posición de contenido predeterminado. Si una página ASP.NET no proporciona el contenido para el marcador de posición, la página principal muestra el contenido predeterminado.

Tener acceso a los miembros de la página principal desde las páginas de contenido mediante programación. Esto permite cambiar dinámicamente la apariencia de la página principal en tiempo de ejecución. Para obtener información detallada, vea Cómo: Hacer referencia al contenido de la página principal ASP.NET.

Utilizar el filtrado de dispositivos con las páginas principales a fin de crear diferentes diseños para distintos dispositivos, por ejemplo un diseño para exploradores y otro para un tipo de teléfono concreto. Para obtener información detallada, vea Información general sobre el filtrado de dispositivos de ASP.NET.

Obtener información sobre cómo puede colocar unas páginas principales dentro de otras para crear partes divididas en componentes. Para obtener información detallada, vea Páginas principales ASP.NET anidadas.

¿Cómo utilizo el sitio FTP?

1.1 ¿Cómo utilizo el sitio FTP?

En ocasiones para disgnosticar problemas de su base de datos, sea por daño o errores en la captura y/o operación de nuestros productos es necesario que nos proporcione un respaldo de su base de datos para conocer el origen de la falla.Para utilizar nuestro sitio FTP es necesarioque un asesor de soporte técnico le indique que deberá proporcionarnos su respaldo, quien también le proporcionará un usuario y contraseña para accesar al sitio ftp.INSTRUCCIONES PARA EL USO DEL SERVICIO DE FTPA) Para SUBIR un archivo:•Abrir el navegador de Internet (Internet Explorer por ejemplo)
•Escribir en la barra de direcciones del navegador de Internet la dirección del servidor de FTP y presionar la tecla enter de su teclado.
•Ingresar su usuario y password, dar clic en aceptar. Si hizo todo correctamente entonces usted ya ha iniciado exitosamente una sesión de FTP en el servidor de Logical Concept, usted podrá visualizar o no los archivos de su carpeta personal dependiendo si había archivos previamente.
: Si la versión de su explorador es 7.0 o superior, probablemente la ventana no solicite en primera instancia el usuario y contraseña, sino que tenga que seleccionar que el sitio se muestre en el explorador de Windows. Para hacer esto, seleccione en el menú “Página” la opción “Abrir en el explorador de Windows” como lo muestra la imagen.


•Minimizar esta ventana de Internet Explorer.•Localizar en su computadora el archivo que desea subir al servidor de Logical Concept (le recomendamos lo ubique previamente en su escritorio).•Hacer clic derecho en el archivo que pretende subir al servidor de Logical Concept, se desplegara un submenú con varias opciones, hacer clic sobre la opción copiar. •


•Maximizar la ventana de Internet Explorer con la sesión de FTP que inicio en los pasos anteriores.•Hacer clic en el menú edición de la barra de herramientas y seleccionar la opción copiar.•El archivo comenzará a copiarse automática y progresivamente desde su computadora hasta el servidor de Logical Concept, deje que termine este proceso el cual se cerrará automáticamente al terminar la transferencia del archivo. La duración de este proceso dependerá del tamaño del archivo, velocidad de su conexión, velocidad de su procesador y memoria RAM de su computadora.
B) Para BAJAR un archivo:•Abrir el navegador de Internet (Internet Explorer por ejemplo).•Escribir en la barra de direcciones del navegador de Internet la dirección del servidor de FTP y presionar la tecla enter de su teclado.

◦Ingresar su usuario y password, dar clic en aceptar. Si hizo todo correctamente entonces usted ya ha iniciado exitosamente una sesión de FTP en el servidor de Logical Concept, usted podrá visualizar o no los archivos de su carpeta personal dependiendo si había archivos previamente.

: Si la versión de su explorador es 7.0 o superior, probablemente la ventana no solicite en primera instancia el usuario y contraseña, sino que tenga que seleccionar que el sitio se muestre el explorador de Windows. Para hacer esto, seleccione en el menú “Página” la opción “Abrir en el explorador de Windows” como lo muestra la imagen.
◦Localizar el archivo que desea descargar desde el servidor de Logical Concept hasta su computadora, hacer clic derecho sobre este archivo y seleccionar la opción copiar.

◦Minimizar esta ventana de Internet Explorer donde ha iniciado sesión de FTP.◦Ubicarse en la carpeta donde desea colocar este archivo a descargar. Le recomendamos lo haga en el escritorio de Windows para mayor simplicidad.◦Si está en una carpeta haga clic en el menú edición de la barra de herramientas y seleccionar la opción copiar, si está en el escritorio de clic derecho en un espacio vacío (no sobre un icono) y seleccione la opción pegar.
◦El archivo comenzará a descargarse (bajar) desde el servidor de Logical Concept automática y progresivamente hasta su computadora, deje que termine este proceso el cual se cerrará automáticamente al terminar la transferencia del archivo. La duración de este proceso dependerá del tamaño del archivo, velocidad de su conexión, velocidad de su procesador y memoria RAM de su computadora.

Fuente: http://www.logicalconcept.com/Logical2008/CmoutilizoelsitioFTP..html

Cómo: Crear y configurar sitios FTP en IIS

El Protocolo de transferencia de archivos (FTP) es un protocolo estándar para mover a través de Internet los archivos de un equipo a otro. Los archivos se almacenan en un servidor, que ejecuta el software del servidor FTP. Los equipos remotos se pueden conectar utilizando FTP y leer archivos de lectura del servidor o copiar archivos al servidor. Un servidor FTP se asemeja a un servidor HTTP (es decir, un servidor Web) en que se puede comunicar con él mediante un protocolo de Internet. Sin embargo, un servidor FTP no ejecuta las páginas Web; sólo envía y recibe los archivos de los equipos remotos.

Puede configurar los Servicios de Internet Information Server (IIS) para funcionar como un servidor FTP. Esto permite a otros equipos conectarse al servidor y copiar archivos en y del servidor. Por ejemplo, puede configurar IIS para que actúe como un servidor FTP si está alojando sitios Web en el equipo y desea que usuarios remotos se puedan conectar al equipo y copiar archivos en el servidor.

Nota
Normalmente, las credenciales de FTP se pasan como texto no cifrado y no cifrado para la transmisión. Se recomienda utilizar FTP con la autenticación anónima o básica. Para obtener más información, consulte los temas relativos a la protección de sitios FTP y a los métodos de autenticación admitidos en IIS 6.0 en la referencia técnica de IIS.


IIS como servidor FTP
Además de actuar como un servidor Web, IIS puede actuar como un servidor FTP. El servicio FTP no se instala de manera predeterminada en IIS. Por lo tanto, para utilizar IIS como un servidor FTP, debe instalar el servicio FTP. Para obtener más información acerca de la instalación y configuración de IIS como un servidor FTP, consulte la documentación de la Ayuda incluida con IIS o consulte la sección relativa a la configuración de sitios FTP en la referencia técnica de IIS.

Nota
Necesitará el CD de Windows.


Para preparar un servidor FTP mediante IIS
Haga clic en el botón Inicio, Panel de control y, a continuación, en Agregar o quitar programas.

Haga clic en Agregar o quitar componentes de Windows.

En el cuadro de diálogo Asistente para componentes de Windows, si está ejecutando al menos Windows Server 2003, seleccione Servidor de aplicaciones y, a continuación, haga clic en Detalles.

Seleccione Servicios de Internet Information Server (IIS) y, a continuación, haga clic en Detalles.

En el cuadro de diálogo Servicios de Internet Information Server (IIS), active la casilla de verificación Servicio de Protocolo de transferencia de archivos (FTP) y haga clic en Aceptar.

En el cuadro de diálogo Asistente para componentes de Windows, haga clic en Siguiente. Si se le solicita, inserte su CD de Windows.

Al finalizar el proceso de instalación, puede utilizar el servicio FTP con IIS.

Crear carpetas
Después de preparar un servidor FTP, necesita crear una estructura de carpetas para el servidor. De manera predeterminada, el servidor FTP tendrá una carpeta raíz con la ruta de acceso siguiente: C:\inetpub\ftproot.

La carpeta raíz de FTP actúa como la raíz del servidor FTP de la misma manera que C:\inetpub\wwwroot es la raíz para el servidor Web.

Debe crear las carpetas físicas donde se ubicarán los archivos. Ésta puede ser una subcarpeta de la raíz del servidor FTP u otra carpeta ubicada en otra parte del equipo. A continuación, se crea una raíz virtual, o alias, que el servidor FTP utilizará para indicar el directorio físico en el que se ubicarán los archivos.

Para configurar una carpeta FTP y una raíz virtual
Cree una nueva carpeta para contener los archivos. Puede asignar cualquier nombre a la carpeta. Por ejemplo, utilice el nombre EjemploArchivosFtp para la nueva carpeta para que la ruta de acceso de la carpeta sea C:\inetpub\ftproot\EjemploArchivosFtp.

En Windows, en el menú Herramientas administrativas, seleccione Servicios de Internet Information Server.

Nota
En Windows XP también puede hacer clic con el botón secundario en Mi PC en el menú Inicio o en el escritorio y, a continuación, hacer clic en Administrar. En el cuadro de diálogo Administración de equipos, abra el nodo Servicios y Aplicaciones.


Abra el nodo para el equipo y, a continuación, abra el nodo Sitios FTP.

Haga clic con el botón secundario en Sitio FTP predeterminado, seleccione Nuevo y, a continuación, haga clic en Directorio virtual.

En el Asistente para crear un directorio virtual especifique un alias (o un nombre) que los usuarios pueden utilizar para obtener la carpeta FTP creada en el paso 1. Puede utilizar el nombre que desee. A menudo resulta más práctico utilizar el nombre del directorio como el nombre del alias de manera que el directorio virtual se puede denominar EjemploArchivosFtp.

Para la ruta de acceso, escriba o vaya a la ruta de acceso del directorio del paso 1, por ejemplo Inetpub\ftproot\EjemploArchivosFtp.

Para Permisos de acceso, especifique Lectura y, a continuación, haga clic en Siguiente para finalizar con el asistente.

Nota
No habilite los permisos de Escritura a menos que entienda cómo proteger su servidor FTP de IIS. Para obtener más información, vea el tema relativo a la protección de sitios FTP en la referencia técnica de IIS.



Configurar permisos
También debe conceder permisos a los usuarios para que puedan leer y escribir en la carpeta.

Para establecer los permisos para la carpeta FTP
En Windows, en el menú Herramientas administrativas, seleccione Servicios de Internet Information Server.

Nota
En Windows XP también puede hacer clic con el botón secundario en Mi PC en el menú Inicio o en el escritorio y, a continuación, seleccionar Administrar. En el cuadro de diálogo Administración de equipos, abra el nodo Servicios y Aplicaciones.


Abra el nodo para el equipo, abra el nodo Sitios FTP y, a continuación, abra el nodo Sitio FTP predeterminado.

Haga clic con el botón secundario del mouse (ratón) en el nodo del directorio virtual de la carpeta FTP que desee (por ejemplo, ExampleFtpFiles) y haga clic en Permisos.

En la ficha Seguridad, seleccione o agregue la cuenta de usuario y asigne permisos Modificar.

Esto establece permisos NTFS. Para especificar las restricciones de IP, haga clic con el botón secundario del mouse en el nombre de la carpeta, haga clic en Propiedades y agregue las restricciones en la ficha Seguridad de directorios. Para obtener más información, vea los temas relativos al control de acceso en IIS 6.0 en la referencia técnica de IIS.

Cierre el cuadro de diálogo Propiedades.

Crear un directorio virtual del servidor Web
Generalmente, se crea un directorio virtual para el servidor Web que se asigna al sitio FTP para que el servidor Web pueda obtener acceso a los archivos en la raíz del servidor FTP. El nombre del directorio virtual Web puede ser igual que el nombre del directorio virtual FTP, pero no es necesario.

Para crear un directorio virtual de servidor Web
En el cuadro de diálogo Servicios de Internet Information Server, abra el nodo Sitios Web.

Haga clic con el botón secundario en Sitio Web predeterminado, haga clic en Nuevo y, a continuación, haga clic en Directorio virtual.

En el asistente, especifique un alias que los usuarios utilizarán con el protocolo http:// para tener acceso a los archivos de la carpeta FTP. Éste puede ser igual que el alias de FTP, por ejemplo EjemploArchivosFtp.

Para la ruta de acceso del directorio, escriba o vaya a la ruta de acceso del directorio FTP, por ejemplo C:\inetpub\ftproot\EjemploArchivosFtp.

Para los permisos de acceso, seleccione Lectura y Ejecutar secuencias de comandos.

Haga clic en Finalizar para crear el directorio virtual y cerrar el asistente.

Tutorial: Crear un sitio Web local de IIS en Visual Web Developer

Con la herramienta de desarrollo Web Microsoft Visual Web Developer puede crear y editar sitios Web que mantengan las páginas Web y otros archivos en distintas ubicaciones. Entre las opciones para ubicar páginas Web y otros archivos se encuentran las siguientes:

  • En una carpeta en el disco duro local, a la que se hace referencia como sitio Web del sistema de archivos.

  • Como aplicación Web con una copia local de Servicios de Microsoft Internet Information Server (IIS), a la que se hace referencia como sitio Web de IIS local.

También puede trabajar con sitios Web en un servidor remoto, mediante la creación de un sitio Web de servicios de Microsoft SharePoint o mediante la conexión a un servidor que utilice FTP. Para obtener más información, vea Tipos de sitios Web en Visual Web Developer.

En este tutorial trabajará con dos sitios Web que se ejecutan en una copia de IIS instalada localmente. Uno de los sitios Web está ubicado físicamente bajo la carpeta raíz de IIS (normalmente, C:\Inetpub\wwwroot). Un segundo sitio Web se encuentra en una práctica carpeta en el disco duro, pero está disponible para IIS a través de un directorio virtual.

Puede utilizar IIS para probar el sitio Web. Si el equipo está configurado para permitir a otros usuarios conectarse, el sitio Web estará disponible para esos usuarios.

NoteNota

Aunque no pueda ejecutar IIS en el equipo, puede crear y probar sitios Web de ASP.NET si ejecuta Visual Web Developer. Para obtener más información, vea Tutorial: Crear una página Web básica en Visual Web Developer.

Entre las tareas ilustradas en este tutorial se incluyen las siguientes:

  • Crear una aplicación y una página bajo la raíz de IIS.

  • Crear una aplicación que utilice una raíz virtual de IIS.

  • Utilizar IIS para ejecutar la página.

  • Trabajar con IIS en el Explorador de soluciones.

Para realizar este tutorial, debe tener IIS instalado en el equipo de manera local y debe iniciar sesión como usuario con privilegios administrativos. Esto se debe a que trabajar con la metabase de IIS (donde se almacena información sobre las aplicaciones IIS) requiere privilegios administrativos.

En la primera parte del tutorial creará un sitio Web que se ubicará bajo la carpeta predeterminada de IIS (normalmente, \Inetpub\wwwroot).

Para crear un nuevo sitio Web de IIS local bajo la raíz de IIS

  1. Abra Visual Web Developer.

  2. En el menú Archivo, haga clic en Nuevo sitio Web.

    Aparece el cuadro de diálogo Nuevo sitio Web.

  3. En Plantillas instaladas de Visual Studio, haga clic en Sitio Web ASP.NET.

  4. Haga clic en Examinar.

    Aparecerá el cuadro de diálogo Seleccionar ubicación.

  5. Haga clic en IIS local.

  6. Haga clic en Sitio Web predeterminado.

  7. Haga clic el icono para crear un nuevo sitio Web, que se encuentra en la esquina superior derecha.

    Este icono no está etiquetado, pero cuando se pausa el puntero del mouse (ratón) sobre él, aparece el texto Crear nueva aplicación Web.

    Se agrega una nueva aplicación, con el nombre Sitio Web, bajo Sitio Web predeterminado.

  8. En el cuadro para el nuevo sitio Web, escriba LocalIISWebSite y, a continuación, haga clic en Abrir.

    Aparece el cuadro de diálogo Nuevo sitio Web y el cuadro de Ubicación situado en el extremo derecho muestra http://localhost/LocalIISWebSite.

  9. En la lista Lenguaje, haga clic en el lenguaje de programación con el que prefiera trabajar.

    El lenguaje de programación que ha elegido será el lenguaje predeterminado del sitio Web. Sin embargo, puede utilizar varios lenguajes en la misma aplicación Web creando páginas y componentes en lenguajes de programación diferentes.

  10. Haga clic en Aceptar.

    Visual Web Developer crea el nuevo sitio Web y abre una nueva página con el nombre Default.aspx. Mantenga esta página abierta. Esta página inicial Default.aspx utiliza el modelo de código subyacente de páginas Web. Para obtener más información, vea Modelo de código de las páginas Web ASP.NET.

Visual Web Developer no se limita a crear las carpetas y los archivos del sitio Web, sino que también interactúa con IIS para crear una aplicación Web IIS para el sitio. Básicamente, Visual Web Developer llama a IIS para crear los metadatos que necesita IIS para poder reconocer la carpeta y las páginas como un sitio Web.

Puede examinar lo que Visual Web Developer ha llevado a cabo si observa los archivos y carpetas creados.

Para examinar la estructura del sitio Web de IIS local

  1. En Microsoft Windows, haga clic en Inicio y, a continuación, haga clic en Ejecutar.

    Dentro del cuadro de diálogo Ejecutar, en el cuadro Abrir, escriba C:\Inetpub\wwwroot y, a continuación, haga clic en Aceptar.

    NoteNota

    Si IIS se instala en una unidad o en una carpeta diferente, cambie la ruta de acceso según corresponda.

    En \wwwroot se ve ahora una nueva carpeta con el nombre LocalIISWebSite.

  2. En el cuadro de diálogo Ruta de acceso, haga doble clic en LocalIISWebSite.

    Se ve el contenido del sitio Web, que incluye lo siguiente:

    • Una carpeta App_Data, creada automáticamente por Visual Web Developer.

    • Una página Default.aspx.

    • El archivo de código subyacente, que es Default.aspx.cs o Default.aspx.vb, según el lenguaje predeterminado para la aplicación Web.

Puede agregar páginas al sitio Web como lo haría normalmente. No obstante, también puede agregar páginas externamente al sitio Web; Visual Web Developer las reconocerá como parte de la aplicación, aunque quizá deba actualizar el Explorador de soluciones para que resulten visibles.

Agregar y programar controles

En esta parte del tutorial agregará a la página controles Button, TextBox y Label y escribirá código para controlar el evento Click para el control Button.

Para agregar controles a la página

  1. En Visual Web Developer, abra o cambie a la página Default.aspx y, a continuación, cambie a la vista Diseño.

  2. Presione varias veces MAYÚS+ENTRAR para crear espacio.

  3. Desde el grupo Estándar del Cuadro de herramientas, arrastre tres controles a la página: TextBox, Button y Label.

    NoteNota

    Si no puede ver el Cuadro de herramientas, diríjase al menú Ver y haga clic en Cuadro de herramientas.

  4. Coloque el puntero de inserción delante del cuadro de texto y, a continuación, teclee Escriba su nombre:.

  5. Haga clic en el control Button y, en Propiedades, establezca Texto como Mostrar nombre.

  6. Haga clic en el control Label y, en Propiedades, borre Texto.

  7. Haga doble clic en el control Button, que ahora presenta la etiqueta Mostrar nombre.

    Visual Web Developer abre el archivo de código para la página en una ventana independiente en el editor.

    El archivo contiene un controlador esqueleto Click para el control Button.

  8. Complete el controlador Click agregando el código resaltado siguiente, con el que se mostrará la cadena de texto después de que se haga clic en el control Button.

    Security noteNota de seguridad

    Los datos proporcionados por el usuario en una página Web de ASP.NET pueden incluir secuencias de comandos del cliente malintencionadas. De forma predeterminada, las páginas ASP.NET comprueban las páginas en devolución de datos para garantizar que los datos proporcionados por el usuario no incluyen secuencias de comandos ni elementos HTML. Para obtener más información, vea Información general sobre los ataques mediante secuencias de comandos.

    Visual Basic
    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
    
    Label1.Text = Textbox1.Text & ", welcome to Visual Web Developer!"
    End Sub
    C#
    protected void Button1_Click(object sender, EventArgs e)
    
    {
    Label1.Text = TextBox1.Text + ", welcome to Visual Web Developer!";
    }
  9. Guarde los archivos.

    Probará esta página Web más adelante en este tutorial, en la sección "Probar la aplicación Web IIS".

Actualizar el sitio Web fuera de Visual Web Developer

Se puede ver que Visual Web Developer lee la ruta de acceso a IIS si se agrega un nuevo archivo a la aplicación desde fuera de Visual Web Developer.

Para actualizar el Web fuera de Visual Web Developer

  1. Con Bloc de notas u otros editor de texto, cree un nuevo archivo que tenga el texto que se muestra a continuación, en función de si utiliza Visual Basic o C#.

    Visual Basic
    <%@Page language="VB"%>
    



    "server" id="form1">
    "server" text="Button1" Id="Button1"
    OnClick="Button1_Click">



    C#
    <%@Page language="C#"%>
    



    "server" id="form1">
    "server" text="Button1" Id="Button1"
    OnClick="Button1_Click">



  2. Guarde el archivo en la ruta de acceso C:\inetpub\wwwroot\LocalIISWebSite con el nombre TestPage.aspx.

    NoteNota

    Si IIS se instala en una unidad o en una carpeta diferente, cambie la ruta de acceso según corresponda.

  3. En Visual Web Developer, en el Explorador de soluciones, haga clic en el nombre del sitio Web (http://localhost/LocalIISWebSite/) y, a continuación, en el menú Ver, haga clic en Actualizar.

    La lista de archivos que se encuentran en el sitio Web se actualizará para incluir el archivo agregado. Luego probará las páginas Web.

Probar la aplicación Web de IIS

Ya puede probar el sitio Web.

Para probar el sitio Web IIS local

  1. En Visual Web Developer, abra la página Default.aspx.

  2. Presione CTRL+F5 para ejecutar la página.

    Se abre la página en el explorador. Observe que, en el explorador, la dirección URL es http://localhost/LocalIISWebSite/default.aspx. La solicitud para la página se realiza al host local (sin número de puerto), que controla IIS.

  3. Cuando aparezca la página en el explorador, escriba su nombre en el cuadro de texto y haga clic en Mostrar nombre para asegurarse de que funciona.

  4. En Visual Web Developer, abra la página TestPage.aspx.

  5. Presione CTRL+F5 para ejecutar la página.

    La página se abre en la misma instancia del explorador.

  6. Cuando aparezca la página en el explorador, haga clic en Button1 para asegurarse de que funciona.

  7. Cierre el explorador.

Si tiene la posibilidad de conectarse al equipo desde otro equipo, puede intentar obtener acceso a su sitio como si fuera un sitio público. Si no puede conectarse al equipo desde otro equipo, puede pasar por alto este procedimiento.

Para probar el sitio como un sitio público

  • Escriba desde otro equipo la dirección URL que incluye el nombre del equipo servidor Web, el nombre del sitio Web y default.aspx como página:

    • Si es posible el acceso al equipo a través de una red de área local, utilice el nombre del equipo para el servidor que tiene una dirección URL como la siguiente:

      http://server1/LocalIISWebSite/default.aspx

    • Si aloja un dominio en el equipo, puede tener acceso a la página con una dirección URL como la siguiente:

      http://www.contoso.com/LocalIISWebSite/default.aspx

    • Si el equipo está conectado a una red o directamente a Internet, puede utilizar la dirección IP del equipo como nombre de servidor. Por ejemplo:

      http://172.19.195.700/LocalIISWebSite/default.aspx

    NoteNota

    Si no puede ver su aplicación desde otro equipo debido a la configuración del firewall de Windows, quizá tenga que habilitar el servidor Web en el puerto 80. Puede hacerlo desde la ficha Avanzadas del firewall de Windows, si hace clic en Configuración. Para obtener más información, visite Security Developer Center -- .NET Framework Security y busque información sobre la configuración del firewall de Windows.

Como hemos visto hasta ahora, IIS permite crear aplicaciones Web ubicadas físicamente bajo la carpeta raíz predeterminada del servidor Web (wwwroot). No obstante, también se pueden crear directorios virtuales de IIS, que son aplicaciones Web de IIS que señalan a archivos y carpetas que pueden encontrarse en cualquier ubicación del disco duro.

NoteNota

Por razones de seguridad, IIS no permite crear directorios virtuales que señalen a carpetas de otros equipos. Los directorios virtuales siempre deben señalar al equipo local.

En esta parte del tutorial, utilizará Visual Web Developer para crear un directorio virtual que señale a un sitio Web almacenado en una carpeta local del equipo.

El primer paso consiste en crear el directorio virtual. Si ya ha creado un sitio Web de sistema de archivos en Visual Web Developer (por ejemplo, en Tutorial: Crear una página Web básica en Visual Web Developer), puede utilizar ese sitio Web.

Para crear un sitio Web de IIS local con una carpeta virtual

  1. En Visual Web Developer, en el menú Archivo, haga clic en Nuevo sitio Web.

  2. En Plantillas instaladas de Visual Studio, haga clic en Sitio Web ASP.NET.

  3. Haga clic en Examinar.

    Aparecerá el cuadro de diálogo Seleccionar ubicación.

  4. Haga clic en IIS local.

  5. En Seleccione el sitio Web que desee abrir, en la vista de árbol, haga clic en Sitio Web predeterminado y, a continuación, haga clic en el icono para crear un nuevo directorio virtual, que se encuentra en la esquina superior derecha.

    Este icono no está etiquetado, pero cuando se pausa el puntero del mouse (ratón) sobre él, aparece el texto Crear nuevo directorio virtual.

    Aparece el cuadro de diálogo Nuevo directorio virtual.

  6. En el cuadro Nombre de alias, escriba WebSite_vdir.

    NoteNota

    Puede asignar al directorio virtual el nombre que desee, siempre y cuando sea válido en IIS.

  7. En el cuadro Carpeta, escriba una de las opciones siguientes:

    • La ruta de acceso a un sitio Web de sistema de archivos, si lo tiene. Puede hacer clic en Examinar y después buscar la carpeta raíz de ese sitio, si no recuerda la ruta de acceso exacta.

    • La ruta de acceso en la que desea crear una nueva carpeta para almacenar las carpetas y los archivos del sitio Web.

  8. Haga clic en Aceptar.

    Si ha especificado una carpeta que no existe, Visual Web Developer le pregunta si desea crearla.

    Después, Visual Web Developer vuelve al cuadro de diálogo Seleccionar ubicación y actualiza la lista de aplicaciones Web IIS que tienen el directorio virtual que ha creado.

  9. Seleccione el directorio virtual que ha creado, haga clic en Abrir y, a continuación, haga clic en Aceptar para crear el sitio Web.

    Si especificó que el directorio virtual señalara a una carpeta nueva o que no contiene un sitio Web, Visual Web Developer crea la carpeta App_Data y una página predeterminada, que abre en el diseñador.

    Si la carpeta virtual señala a un sitio Web de sistema de archivos ya existente, Visual Web Developer abre el cuadro de diálogo El sitio Web ya existe y le ofrece la opción de seleccionar una nueva carpeta, abrir el sitio existente o crear un nuevo sitio Web en la ubicación existente. Después de haber seleccionado una opción y hacer clic en Aceptar, Visual Web Developer muestra el contenido de la carpeta en el Explorador de soluciones y abre la página Default.aspx, en caso de que exista.

Agregar controles a la página Web

Al igual que hizo anteriormente en la sección "Probar la aplicación Web de IIS", utilizará una página Web ASP.NET sencilla para probar el sitio Web IIS que está creando. Si trabaja con un sitio Web de sistema de archivos ya existente, no es necesario que cree una nueva página. En caso de que su directorio virtual señale a una nueva carpeta, puede utilizar esa página.

Si se trata de un nuevo sitio Web, agregará algunos controles a la página predeterminada para probar el funcionamiento de la página.

Para agregar controles a la página

  1. En Visual Web Developer, abra la página Default.aspx y cambie a la vista Diseño.

  2. Arrastre un control TextBox, un control Button y un control Label desde el grupo Estándar del Cuadro de herramientas hasta la página.

  3. Haga doble clic en el control Button y, a continuación, agregue el código resaltado que se muestra a continuación:

    Visual Basic
    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
    
    Label1.Text = "Welcome to Visual Web Developer!"
    End Sub
    C#
    protected void Button1_Click(object sender, System.EventArgs e)
    
    {
    Label1.Text = "Welcome to Visual Web Developer!";
    }
  4. Guarde los archivos.

Probar el directorio virtual

Ya puede probar el sitio Web.

Para probar el sitio Web de IIS local con el directorio virtual

  1. En Visual Web Developer, abra una página en el Sitio Web, que puede ser la página Default.aspx u otra página.

  2. Presione CTRL+F5 para ejecutar la página.

    Se abre la página en el explorador. Observe que, en el explorador, la dirección URL es http://localhost/Website_vdir/default.aspx. Cuando IIS resuelve la dirección URL, busca la página en la ruta de acceso física asociada al directorio virtual denominado Website_vdir.

  3. Cuando aparezca la página en el explorador, haga clic en el control Button para asegurarse de que funciona.

  4. Cierre el explorador.

Si puede conectarse al equipo desde otro equipo, puede realizar las mismas pruebas que en la sección anterior para intentar obtener acceso a la página.

Puede administrar sitios Web de IIS locales en Visual Web Developer y eliminar los que ya no necesita. Existe una diferencia importante por lo que respecta a la eliminación, según el tipo de sitio Web IIS local con el que se trabaje:

  • Cuando se elimina un sitio Web bajo la raíz de IIS, se elimina la aplicación Web de IIS y también se eliminan los archivos y carpetas del sitio Web.

  • Cuando se elimina un directorio virtual, se elimina la información de IIS acerca de ese sitio, pero los archivos y carpetas de la carpeta del sistema de archivos local permanecen intactos.

Para eliminar el sitio Web IIS local

  1. En el menú Archivo, haga clic en Cerrar solución o en Cerrar proyecto.

  2. En el menú Archivo, haga clic en Abrir sitio Web.

  3. En el cuadro de diálogo Abrir sitio Web, haga clic en IIS local.

  4. Haga clic en el nombre del directorio virtual (Website_vdir) que creó anteriormente en este tutorial, en la sección "Crear un sitio Web como raíz virtual de IIS".

    Caution notePrecaución

    Si selecciona un sitio Web diferente, se podrían eliminar los archivos y las carpetas de ese sitio Web.

  5. Haga clic en el icono de eliminación, situado en la esquina superior derecha.

    El icono no está etiquetado, pero cuando se pausa el puntero del mouse (ratón) sobre él, aparece el texto de información sobre herramientas Eliminar.

  6. Cuando se le solicite confirmación para eliminar el sitio Web, haga clic en .

  7. Haga clic en Cancelar para cerrar el cuadro de diálogo Abrir sitio Web.

  8. Abra el explorador y, a continuación, escriba la dirección URL del directorio virtual:

    http://localhost/Website_vdir/default.aspx

    En esta ocasión, el explorador informa de que no se encuentra la página, dado que IIS ya no reconoce Website_vdir como sitio Web en el equipo local.