Share via


Tutorial: Implementar un proyecto de aplicación web con un paquete de implementación web (Parte 1 de 4)

Este es el primero de una serie de tutoriales en los que se muestra cómo implementar un proyecto de aplicación web usando un paquete de implementación web. En esta serie creará un proyecto de aplicación web ASP.NET de sistema de archivos. Primero lo implementará en el equipo local para las pruebas de IIS locales y, a continuación, lo implementará en un servidor de ensayo. El paquete de implementación que se usa para realizar la implementación en un servidor de ensayo se configurará de forma que se pueda usar también para llevarla a cabo en un servidor de producción.

En esta serie de tutoriales se muestran las siguientes tareas:

  • Crear un paquete para la configuración de compilación Debug.

  • Crear un paquete para la configuración de compilación Release.

  • Transformar la configuración del archivo Web.config para el entorno de destino.

  • Incluir scripts SQL personalizados durante la implementación.

  • Volver a implementar una base de datos que ya se ha implementado.

  • Excluir de la implementación una base de datos que ya se ha implementado.

  • Implementar varias bases de datos de desarrollo en una única base de datos de destino.

  • Implementar la base de datos de pertenencia a ASP.NET predeterminada con y sin la información de cuenta que se crea en el equipo local.

  • Usar parámetros de implementación personalizados para los valores de configuración que desea poder cambiar cuando se instale el paquete.

  • Instalar un paquete en el equipo local usando el Administrador de IIS.

  • Instalar un paquete en un equipo remoto mediante el archivo deploy.cmd.

En este tutorial se muestran las tareas siguientes:

  • Crear un paquete para la configuración de compilación Debug.

  • Transformar la configuración del archivo Web.config para el entorno de destino.

  • Implementar varias bases de datos de desarrollo en una única base de datos de destino.

  • Incluir scripts SQL personalizados durante la implementación.

  • Implementar la base de datos de pertenencia a ASP.NET predeterminada con la información de cuenta que se crea en el equipo local.

  • Instalar un paquete en el equipo local usando el Administrador de IIS.

Requisitos previos

Para poder completar esta serie de tutoriales, necesitará lo siguiente:

  • Visual Studio o Visual Web Developer Express.

    Nota

    Si usa Visual Studio, en este tutorial se presupone que seleccionó la colección de configuraciones Desarrollo web la primera vez que inició Visual Studio.Para obtener más información, vea Cómo: Seleccionar configuraciones de entorno de desarrollo web.

  • SQL Server Express 2008 o una versión posterior. (De forma predeterminada, se instala con Visual Studio).

  • Archivo .mdf de la base de datos AdventureWorksLT. Este archivo está disponible para la descarga como SQL2008.AdventureWorksLT2008_Only_Database.zip en Microsoft SQL Server: Database Product Samples en el sitio web de CodePlex.

  • IIS 7 habilitado en el equipo local.

  • ASP.NET 4 registrado con IIS 7 en el equipo local y un grupo de aplicaciones ASP.NET 4 asignado al sitio web predeterminado. Para obtener más información, vea Herramienta Registro de IIS en ASP.NET (Aspnet_regiis.exe).

  • Derechos administrativos en el equipo local.

Además, para completar la instalación del paquete de implementación del cuarto tutorial, debe tener lo siguiente:

  • Un segundo equipo en el que realizar la implementación. El segundo equipo también debe tener IIS 7 habilitado, ASP.NET 4 debe estar registrado con IIS 7 y se debe asignar un grupo de aplicaciones ASP.NET 4 al sitio web predeterminado. Si va a configurar este equipo, necesitará derechos administrativos en el mismo. Si lo va a configurar otra persona en su lugar, puede que usted necesite derechos administrativos en él, según el método de implementación que use. Para obtener más información, vea Tutorial: Implementar un proyecto de aplicación web con un paquete de implementación web (Parte 4 de 4), que es el tutorial que requiere el segundo equipo.

Crear un proyecto web para implementar

En el siguiente procedimiento, creará un proyecto de aplicación web para implementar con la plantilla de proyecto de Visual Studio Aplicación web ASP.NET. Creará la base de datos de pertenencia a ASP.NET predeterminada, agregará la base de datos AdventureWorksLT y agregará controles para mostrar los datos de la base de datos AdventureWorksLT.

Para crear un proyecto web para implementación

  1. En Visual Studio, en el menú Archivo, haga clic en Nuevo proyecto.

    Nota

    Asegúrese de que selecciona Nuevo proyecto y no Nuevo sitio web.El empaquetado de la implementación únicamente funciona con proyectos de aplicación web.

    Aparecerá el cuadro de diálogo Nuevo proyecto.

  2. En la ventana Plantillas instaladas, expanda Visual Basic o C# y, a continuación, seleccione Web.

  3. Seleccione la plantilla Aplicación web ASP.NET.

    En la ilustración siguiente se muestra el cuadro de diálogo Nuevo proyecto:

    Cuadro de diálogo Nuevo proyecto con los valores predeterminados

  4. En el cuadro Nombre, escriba AdventureWorks.

  5. Haga clic en Aceptar.

    Visual Studio crea la aplicación web. La carpeta App_Data se crea para contener las bases de datos de esta aplicación, pero aún no contiene ninguna base de datos.

  6. En el Explorador de soluciones, expanda la carpeta Account, haga clic con el botón secundario en el archivo Register.aspx y, a continuación, haga clic en Ver en el explorador.

    Se abre la página Crear una nueva cuenta, tal y como se muestra en la siguiente ilustración:

    Página Crear una nueva cuenta

  7. Escriba nuevo usuario en Nombre de usuario, escriba nuevo usuario en Contraseña, escriba una dirección de correo electrónico y, a continuación, haga clic en Crear usuario.

    En la carpeta App_Data se crea un archivo de base de datos de SQL Server ASPNETDB.MDF con las credenciales que ha proporcionado. Para ver el archivo .mdf en el Explorador de soluciones, haga clic en el botón Mostrar todos los archivos en la barra de herramientas del Explorador de soluciones.

  8. Extraiga el contenido del archivo SQL2008.AdventureWorksLT2008_Only_Database.zip en la carpeta App_Data del proyecto. Para obtener más información sobre esta base de datos de ejemplo, vea la sección Requisitos previos, anteriormente en este tema.

  9. Abra el archivo Web.config.

  10. En el elemento connectionStrings, agregue una cadena de conexión para la base de datos AdventureWorksLT, como se muestra en el siguiente ejemplo:

    <connectionStrings>
      <add name="ApplicationServices"
          connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnetdb.mdf;User Instance=true"
          providerName="System.Data.SqlClient" />
      <add name="AWLTConnectionString" 
          connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\AdventureWorksLT2008_Data.mdf;User Instance=true"
          providerName="System.Data.SqlClient" />
    </connectionStrings>
    
  11. Guarde y cierre el archivo Web.config.

  12. Abra el archivo Default.aspx.

    El archivo se abre en la vista Código fuente.

  13. Elimine los elementos h2 y p, y, a continuación, agregue el marcado siguiente en su lugar.

    <h2>
      Welcome to AdventureWorks!
    </h2>
    <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
        ConnectionString="<%$ ConnectionStrings:AWLTConnectionString %>" 
        SelectCommand="SELECT SalesLT.Product.* FROM SalesLT.Product">
    </asp:SqlDataSource>
    <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" 
        DataKeyNames="ProductID" DataSourceID="SqlDataSource1">
        <Columns>
            <asp:BoundField DataField="Name" HeaderText="Name" 
                SortExpression="Name" />
            <asp:BoundField DataField="Color" HeaderText="Color" 
                SortExpression="Color" />
            <asp:BoundField DataField="ListPrice" HeaderText="ListPrice" 
                SortExpression="ListPrice" />
            <asp:BoundField DataField="Size" HeaderText="Size" 
                SortExpression="Size" />
            <asp:BoundField DataField="Weight" HeaderText="Weight" 
                SortExpression="Weight" />
        </Columns>
    </asp:GridView>
    

    Este marcado cambia el título de la aplicación a Adventure Works y agrega un control GridView que muestra datos de una de las tablas AdventureWorksLT. Este control le permitirá comprobar que los datos de AdventureWorksLT se implementan correctamente.

  14. Guarde y cierre el archivo Default.aspx.

  15. Opcionalmente, cambie el encabezado de la página maestra tal y como se indica en estos pasos:

    1. Abra el archivo Site.master.

    2. Elimine My ASP.NET Application y sustitúyala por Adventure Works.

    3. Guarde y cierre el archivo.

  16. Pruebe el sitio siguiendo estos pasos:

    1. Para probar la aplicación, presione CTRL-F5.

      La página Default.aspx se muestra en el explorador. La página muestra una lista de productos de Adventure Works, como se muestra en la ilustración siguiente:

      Página predeterminada de aplicación web de Adventure Works

    2. Haga clic en el hipervínculo Iniciar sesión.

      Se muestra la página Iniciar sesión.

    3. Escriba nuevo usuario en Nombre de usuario y Contraseña, y, a continuación, haga clic en Iniciar sesión.

      Se abre la página Default.aspx, que muestra el texto nuevo usuario en la esquina superior derecha, como se muestra en la siguiente ilustración:

      Página predeterminada de Adventure Works iniciada la sesión

    4. Cierre el explorador.

Crear una base de datos de destino

Actualmente, el proyecto web tiene dos bases de datos. Implementará el contenido de ambas en una única base de datos. En un entorno de producción, puede ser más rentable mantener y administrar una base de datos en lugar de dos.

En el procedimiento siguiente, creará la base de datos de destino vacía en la que realizará la implementación.

Para crear una base de datos de destino

  1. En el Explorador de servidores, haga clic con el botón secundario en Conexiones de datos y, a continuación, haga clic en Crear nueva base de datos de SQL Server.

    Aparecerá el cuadro de diálogo Crear nueva base de datos de SQL Server.

  2. En el cuadro Nombre del servidor, escriba localhost\SQLExpress.

  3. En el cuadro Nombre de la base de datos nueva, escriba AdventureWorksTest.

    Cuando haya escrito el nombre de la base de datos, el cuadro de diálogo Crear nueva base de datos de SQL Server tendrá un aspecto similar al de la ilustración siguiente:

    Cuadro de diálogo Crear base de datos

  4. Haga clic en Aceptar.

    Se creará la nueva base de datos, que aparecerá en la carpeta Conexiones de datos de la ventana Explorador de servidores, como se muestra en la siguiente ilustración:

    Explorador de servidores que muestra una nueva base de datos

Crear un script para conceder permisos para la base de datos de destino

Cuando la aplicación web se implementa en IIS, se asigna al grupo de aplicaciones predeterminado de ASP.NET 4. Se tendrá acceso a esta base de datos con las credenciales del grupo de aplicaciones. Por lo tanto, también debe crear un script que conceda permiso de lectura a esas credenciales.

En el procedimiento siguiente, creará un script que ejecutará para conceder permiso de lectura en la base de datos a las credenciales del grupo de aplicaciones.

Para crear un script que conceda permiso de lectura al grupo de aplicaciones

  1. Abra un editor de texto, como el Bloc de notas.

  2. Cree un nuevo archivo de texto e inserte las siguientes instrucciones Transact-SQL:

    CREATE LOGIN [IIS APPPOOL\ASP.NET v4.0] 
      FROM WINDOWS WITH DEFAULT_DATABASE=[master], 
      DEFAULT_LANGUAGE=[us_english]
    GO
    CREATE USER [AdventureWorksUser] 
      FOR LOGIN [IIS APPPOOL\ASP.NET v4.0]
    GO
    EXEC sp_addrolemember 'db_datareader', 'AdventureWorksUser'
    GO
    

    Nota

    Este script está diseñado para funcionar con la configuración de seguridad predeterminada en Windows 7 y Windows Server 2008 R2.Si está usando una versión anterior de Windows, o si su equipo tiene una configuración de seguridad personalizada, puede que este script no haga que su base de datos esté disponible para las credenciales que su sitio web emplea cuando se ejecuta en IIS.Para obtener más información sobre la seguridad de SQL Server, vea los Libros en pantalla de SQL Server.

  3. Asigne al archivo el nombre AdventureWorksGrant.sql y guárdelo en una carpeta de su equipo, como C:\Temp.

    Puede guardar el script en cualquier carpeta. Recuerde la ubicación, porque tendrá acceso al script más adelante en este tutorial.

Establecer la configuración de compilación activa

De forma predeterminada, la configuración de compilación activa para los nuevos proyectos es Debug. Utilizará esta configuración de compilación para la implementación inicial en IIS en el equipo local. En el procedimiento siguiente, asegúrese de que se selecciona la configuración de compilación correcta.

Para establecer la configuración de compilación activa

  1. En el menú Compilar, haga clic en Administrador de configuración.

    Se muestra el cuadro de diálogo Administrador de configuración.

  2. En la lista Configuración de soluciones activas, asegúrese de que esté seleccionado Debug.

    La lista Configuración de soluciones activas también se muestra normalmente en la barra de herramientas Estándar. Si se muestra, puede comprobar o cambiar la configuración de compilación sin abrir el Administrador de configuración.

  3. Cierre el Administrador de configuración.

Especificar la configuración de empaquetado de la implementación

En el procedimiento siguiente se especifica qué archivos y configuración de IIS se debería implementar, y cómo se debería crear el paquete.

Para especificar la configuración de empaquetado de la implementación

  1. En el Explorador de soluciones, haga clic con el botón secundario del mouse en el proyecto y, a continuación, seleccione Propiedades.

    Se muestra la página Propiedades.

  2. Seleccione la pestaña Empaquetar/publicar web.

    Se muestra la pestaña Empaquetar/publicar web, tal como se muestra en la siguiente ilustración:

    Pestaña Empaquetar/publicar web

    En la lista Configuración, asegúrese de que esté seleccionado Activa (Depurar). De forma predeterminada, está seleccionada la configuración de compilación activa. En el procedimiento anterior, la configuración de compilación activa se estableció en Debug.

  3. En la lista Elementos que se van a implementar (se aplica a todos los métodos de implementación), asegúrese de que esté activada la casilla Solo los archivos necesarios para ejecutar esta aplicación.

  4. Asegúrese de que la casilla Excluir símbolos de depuración generados esté desactivada.

    En esta parte del tutorial se va a configurar la implementación en un equipo para pruebas. Por lo tanto, interesa tener la capacidad de depurar.

    Nota

    La capacidad de ejecutar un sitio implementado en modo depuración depende de esta opción y de una configuración del archivo Web.config.No depende del nombre de la configuración de compilación.

  5. Active la casilla Excluir archivos de la carpeta App_Data.

    Aunque el proyecto utiliza los archivos .mdf de SQL Server Express de las carpetas App_Data, realizará la implementación mediante la ejecución de scripts en una base de datos de destino vacía. Por consiguiente, no implementará los archivos .mdf.

  6. Asegúrese de que la casilla Incluir todas las bases de datos configuradas en la pestaña Empaquetar/publicar SQL esté activada. (Configurará la pestaña Empaquetar/publicar SQL en el siguiente procedimiento).

  7. Asegúrese de que la casilla Crear paquete de implementación como archivo zip esté activada.

    Las herramientas de implementación utilizan paquetes como archivos .zip. Si desactiva esta casilla, el paquete se creará como archivos en una estructura de carpetas. Normalmente esto se hace para crear una copia de archivo del sitio implementado.

  8. Asegúrese de que el cuadro Ubicación donde se creará el paquete contenga el siguiente valor (que es el valor predeterminado si especificó AdventureWorks como nombre del proyecto):

    obj\Debug\Package\AdventureWorks.zip

  9. En el cuadro Nombre del sitio web o aplicación de IIS que se usará en el servidor de destino, escriba Sitio web predeterminado/AdventureWorks.

  10. Guarde los cambios efectuados en la pestaña Empaquetar/publicar web.

Especificar configuraciones de implementación de base de datos

En el siguiente procedimiento, especificará las bases de datos que se van a implementar y cómo se van a implementar. También especificará que el script AdventureWorksGrant.sql que creó en el procedimiento anterior debe ejecutarse durante la implementación.

Para especificar scripts de SQL Server que se ejecutarán durante la implementación

  1. Haga clic en la pestaña Empaquetar/Publicar SQL.

    Se muestra la pestaña Empaquetar/publicar SQL, tal como se muestra en la siguiente ilustración:

    Pestaña Empaquetar/publicar SQL

  2. Haga clic Importar desde web.config.

    Visual Studio lee el archivo Web.config de aplicación para buscar cadenas de conexión. Para cada cadena de conexión del archivo Web.config, Visual Studio crea una fila en la cuadrícula Entradas de la base de datos. De manera predeterminada, el nombre de la cuadrícula Entradas de la base de datos es el nombre de la cadena de conexión más el sufijo -Deployment.

    Para este tutorial se crean dos filas. Una se denomina ApplicationServices-Deployment y otra AWLTConnectionString-Deployment, como se muestra en la siguiente ilustración:

    Cuadrícula de base de datos Empaquetar/publicar SQL

  3. Asegúrese de que esté seleccionada la fila ApplicationServices-Deployment de la tabla Entradas de la base de datos.

    Los campos bajo la cuadrícula Entradas de base de datos se aplican a la fila seleccionada en la cuadrícula Entradas de la base de datos. Si no hay ninguna fila seleccionada, los campos bajo la tabla están deshabilitados.

  4. En el cuadro Cadena de conexión para la base de datos de destino, escriba la cadena de conexión de la base de datos AdventureWorksTest, que creó en un procedimiento anterior. Esta acción se puede realizar siguiendo estos pasos:

    1. En la ventana Explorador de servidores, expanda la carpeta Conexiones de datos y seleccione la base de datos AdventureWorksTest.

    2. En la ventana Propiedades, seleccione el valor de la propiedad Cadena de conexión y cópielo. La ventana Propiedades se asemeja a la de la siguiente ilustración:

      Ventana Propiedades que muestra la cadena de conexión

    3. Pegue la cadena de conexión en el cuadro Cadena de conexión para la base de datos de destino.

  5. Asegúrese de que la casilla Extraer datos y/o esquema de una base de datos existente esté activada.

    Cuando hizo clic en Importar desde web.config, esta opción se seleccionó automáticamente. El cuadro Cadena de conexión para la base de datos de origen también se rellenó automáticamente al usar la cadena de conexión del archivo Web.config.

  6. Establezca la lista Opciones de scripting de base de datos en Esquema y datos.

    Después de la implementación, la base de datos de destino incluirá las credenciales de la cuenta de usuario que creó al crear el proyecto.

  7. En la tabla Entradas de la base de datos, seleccione la fila AWLTConnectionString-Implementación.

    Los valores predeterminados se muestran en los campos situados debajo de la cuadrícula.

  8. En el cuadro Cadena de conexión para la base de datos de destino, escriba la misma cadena de conexión de destino que escribió para la base de datos ApplicationServices.

    Está utilizando la misma cadena de conexión de destino para ambas bases de datos. Por lo tanto, durante la implementación, los scripts que crean y rellenan los objetos de base de datos se ejecutarán todos en la misma base de datos. El resultado será que la base de datos de destino contendrá todas las tablas y demás objetos de base de datos de las dos bases de datos del proyecto.

  9. Asegúrese de que la casilla Extraer datos y/o esquema de una base de datos existente esté activada.

  10. Establezca la lista Opciones de scripting de base de datos en Esquema y datos.

  11. Haga clic en Agregar script.

  12. En el cuadro de diálogo Seleccionar archivo, desplácese hasta C:\Temp\AdventureWorksGrant.sql y, a continuación, haga clic en Abrir. (Si guardó el script en una carpeta diferente anteriormente en este tutorial, use el nombre de esa carpeta).

    El archivo AdventureWorksGrant.sql se agrega a la cuadrícula Scripts de base de datos, como se muestra en la siguiente ilustración:

    Cuadrícula Scripts de base de datos de la Pestaña Empaquetar/publicar SQL

  13. Guarde los cambios efectuados en la pestaña Empaquetar/publicar SQL.

Especificar el modo de transacción para el script personalizado

De forma predeterminada, los scripts generado automáticamente se ejecutan en una transacción. Sin embargo, no sucede lo mismo con los scripts personalizados. Si se mezclan modos de transacción, pueden producirse errores de tiempo de espera cuando se ejecutan los scripts durante la implementación.

En el procedimiento siguiente, editará el archivo de proyecto para configurar el script personalizado que agregó en el procedimiento anterior para su ejecución en una transacción.

Para especificar que el script personalizado debería ejecutarse en una transacción

  1. Abra el archivo AdventureWorks.csproj o AdventureWorks.vbproj que usa un editor de texto, como Bloc de notas.

    Para desplazarse al directorio del proyecto, en el Explorador de soluciones, haga clic con el botón secundario en el proyecto y, a continuación, haga clic en Abrir carpeta en el Explorador de Windows.

  2. Busque el elemento PropertyGroup correspondiente a la configuración de compilación Debug.

    La etiqueta de apertura del elemento es similar el ejemplo siguiente:

    <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">

  3. En el elemento PropertyGroup, busque el elemento PublishDatabaseSettings.

  4. En el elemento PublishDatabaseSettings, busque el elemento ObjectGroup denominado AWLTConnectionString-Deployment.

    El segundo elemento Object de este elemento ObjectGroup es para el script AdventureWorksGrant.sql.

  5. En el elemento Object para el script AdventureWorksGrant.sql, cambie el valor del atributo Transacted del elemento Source a True.

    Ahora, el elemento AWLTConnectionString-Deployment ObjectGroup es similar al del ejemplo siguiente:

    <ObjectGroup Name="AWLTConnectionString-Deployment" Order="2">
      <Destination Path="..." />
      <Object Type="dbFullSql" Enabled="True">
        <PreSource Path="..." ScriptSchema="True" ScriptData="True"
          CopyAllFullTextCatalogs="False" ScriptDropsFirst="True" />
        <Source Path="..." Transacted="True" />
      </Object>
      <Object Type="dbFullSql" Enabled="False">
        <Source Path="...\AdventureWorksGrant.sql" Transacted="True" />
      </Object>
    </ObjectGroup>
    
  6. Guarde los cambios y cierre el archivo de proyecto.

  7. Cuando Visual Studio le pregunte si desea volver a cargar el proyecto, haga clic en el botón Volver a cargar.

Cambiar la cadena de conexión en el archivo Web.config implementado

En el siguiente procedimiento creará un archivo de transformación que hace que las cadenas de conexión de la base de datos del archivo Web.config implementado se establezcan en el valor correcto para el entorno de destino.

Para cambiar la cadena de conexión en el archivo Web.config implementado

  1. En el Explorador de soluciones, expanda el archivo Web.config.

  2. Si un archivo llamado Web.Debug.config no está presente, haga clic con el botón secundario en el archivo Web.config y, a continuación, haga clic en Agregar transformaciones de configuración.

  3. Abra el archivo Web.Debug.config.

  4. Elimine el bloque de comentarios que contiene un elemento connectionStrings y sustitúyalo por el marcado siguiente. Sustituya [connection string] por el valor que escribió en el cuadro Cadena de conexión para la base de datos de destino.

    <connectionStrings>
      <add name="ApplicationServices"
           connectionString="[connection string]"
           providerName="System.Data.SqlClient" 
           xdt:Transform="SetAttributes" xdt:Locator="Match(name)" />
      <add name="AWLTConnectionString"
           connectionString="[connection string]"
           providerName="System.Data.SqlClient" 
           xdt:Transform="SetAttributes" xdt:Locator="Match(name)" />
      </connectionStrings>
    
  5. Guarde y cierre el archivo Web.Debug.config.

Implementar la aplicación web

El siguiente paso es implementar el proyecto mediante la creación de un paquete. A continuación, puede importar el paquete en IIS mediante el Administrador de IIS.

Para crear un paquete e importarlo en IIS

  1. En el menú Proyecto, haga clic en Compilar paquete de implementación.

    Visual Studio compila el proyecto y crea el paquete de implementación, mostrando un registro en el ventana de salida. Como parte del proceso de creación del paquete, el proveedor Web Deploy dbFullSQL crea dos scripts de servidor SQL, uno para cada base de datos de origen. Hay una única base de datos de destino y los dos scripts se ejecutarán en ella al importar el paquete. En el ejemplo siguiente se muestran secciones del contenido de la ventana de salida.

    ------ Compilación iniciada: proyecto: AdventureWorks, configuración: Depurar Cualquier CPU ------

    ...

    ------ Publicación iniciada: proyecto: AdventureWorks, configuración: Depurar Cualquier CPU ------

    Se transformó Web.config usando Web.Debug.config en

    obj\Debug\TransformWebConfig\transformed\Web.config.

    ...

    Copiando todos los archivos en la ubicación temporal siguiente para el empaquetado y publicación:

    obj\Debug\Package\PackageTmp.

    Agregando MSDeploy.dbFullSql (MSDeploy.dbFullSql).

    ...

    Agregando sqlScript secundario (MSDeploy.dbFullSql/

    dbFullSql[@path='c:\users\username\documents\visual studio 2010\

    Projects\AdventureWorks\AdventureWorksCS\obj\Debug\AutoScripts\

    ApplicationServices-Deployment_SchemaAndData.sql']/sqlScript).

    ...

    Agregando el parámetro declarado 'IIS Web Application Name'.

    Agregando el parámetro declarado 'ApplicationServices-Deployment Connection String'.

    Agregando el parámetro declarado 'AWLTConnectionString-Deployment Connection String'.

    El paquete "AdventureWorks.zip" se creó correctamente como un solo archivo

    en la siguiente ubicación:

    file:///c:/users/username/documents/visual%20studio%202010/

    Projects/AdventureWorks/AdventureWorksCS/obj/Debug/Package

    ...

    ========== Generar: 1 correctos o actualizados, 0 incorrectos, 0 omitidos ==========

    ========== Publicación: 1 procesados, 0 no procesados, 0 omitidos ==========

  2. Copie la ruta de acceso del paquete de implementación al Portapapeles de Windows siguiendo estos pasos:

    1. En el Explorador de soluciones, si no ve la carpeta obj, haga clic en el botón Mostrar todos los archivos de la barra de herramientas del Explorador de soluciones.

    2. Expanda sucesivamente las carpetas obj, Debug y Package.

    3. Seleccione el archivo AdventureWorks.zip.

    4. En la ventana Propiedades, seleccione y copie el valor del campo Ruta de acceso completa.

  3. En el Panel de control de Windows, haga clic en Herramientas administrativas y, a continuación, haga clic en Administrador de Internet Information Services (IIS).

    Se abrirá el Administrador de IIS y el equipo aparecerá seleccionado en el recuadro Conexiones.

  4. En el recuadro Conexiones, expanda el nodo de su equipo, expanda la carpeta Sitios y, a continuación, seleccione Sitio web predeterminado.

    Ahora, el Administrador de IIS se asemeja al de la siguiente ilustración:

    Administrador de IIS

  5. En el recuadro Acciones, haga clic en Importar aplicación.

    Nota

    Este vínculo normalmente aparece cuando se instala Web Deploy, y Web Deploy se instala de manera predeterminada al instalar Visual Studio.Si no aparece el vínculo, en el Panel de control, abra Programas y características, haga clic con el botón secundario en Herramienta de implementación web y, a continuación, haga clic en Reparar.

    Se abrirá el asistente Importar paquete de aplicación con el cuadro de diálogo Seleccionar paquete.

  6. En el cuadro Ruta de acceso del paquete, pegue la ruta de acceso que copió en un paso anterior.

    El cuadro de diálogo Seleccionar paquete se asemejará al de la siguiente ilustración:

    Cuadro de diálogo de selección del paquete

  7. Haga clic en Siguiente.

    Aparece el cuadro de diálogo Seleccionar el contenido del paquete, como se muestra en la siguiente ilustración:

    Cuadro de diálogo para seleccionar el contenido del paquete

  8. Haga clic en Siguiente.

    Aparece el cuadro de diálogo Especificar información de paquete de aplicación, como se muestra en la siguiente ilustración:

    Cuadro de diálogo para escribir la información del paquete de aplicaciones

    Los valores predeterminados para la ruta de acceso a la aplicación y las cadenas de conexión son los valores que estableció en la pestaña Empaquetar/publicar web.

  9. Haga clic en Siguiente.

  10. Si aparece un cuadro de diálogo que le pide que compruebe si ASP.NET 4 está instalado en su equipo (como se muestra en la siguiente ilustración), asigne un grupo de aplicaciones de ASP.NET 4 al sitio web predeterminado.

    ASP.NET 4 no está registrado en IIS

    Para ello, siga estos pasos:

    1. En el cuadro de diálogo Especificar información de paquete de aplicación, haga clic en Cancelar.

    2. En el menú Inicio de Windows, haga clic con el botón secundario en Símbolo del sistema y, a continuación, haga clic en Ejecutar como administrador.

    3. Vaya a la carpeta correspondiente de .NET Framework 4, como se muestra a continuación.

      C:\Windows\Microsoft.NET\Framework\v4.0.30319

      Si la carpeta Windows del equipo está en una unidad diferente, sustituya C por la letra de unidad adecuada. Para sistemas operativos de 64 bits, use Framework64 en lugar de Framework.

    4. Escriba el comando aspnet_regiis -iru -enable y, a continuación, presione ENTRAR.

      La herramienta registra ASP.NET con IIS. Para obtener más información, vea Herramienta Registro de IIS en ASP.NET (Aspnet_regiis.exe).

    5. Cierre la ventana Símbolo del sistema.

    6. En el Administrador de IIS, seleccione Sitio web predeterminado y, a continuación, haga clic en Configuración básica en el recuadro Acción.

    7. Cambie el Grupo de aplicaciones al grupo de aplicaciones de ASP.NET v4.0. (Puede restablecer el valor original después de finalizar el asistente).

    8. Repita los pasos anteriores para instalar el paquete, empezando por el hipervínculo Importar aplicación del recuadro Acciones del Administrador de IIS.

    Mientras Web Deploy instala el paquete, aparece el cuadro de diálogo Progreso y resumen de la instalación. El cuadro de diálogo muestra una barra de progreso durante el proceso de instalación. Cuando el proceso se ha completado, el cuadro de diálogo muestra un registro de las acciones realizadas, como se observa en la siguiente ilustración:

    Cuadro de diálogo de progreso de instalación y resumen

  11. Haga clic en Finalizar.

Probar la aplicación web implementada

El último paso de este tutorial es comprobar la correcta implementación de la aplicación web.

Para probar la aplicación web

  1. Abra un explorador y escriba la siguiente dirección URL:

    https://localhost/AdventureWorks

    Se mostrará la página Default.aspx. Tiene el mismo aspecto que cuando se ejecuta en Visual Studio. La tabla de productos demuestra que la base de datos AdventureWorksLT se implementó correctamente.

  2. Haga clic en el vínculo Inicio de sesión.

  3. Escriba nuevo usuario en Nombre de usuario y Contraseña, y, a continuación, haga clic en Iniciar sesión.

    Se vuelve a mostrar de nuevo la página Default.aspx, con el texto nuevo usuario junto al vínculo Cerrar sesión. Esto demuestra que la base de datos de pertenencia a ASP.NET se implementó correctamente.

Pasos siguientes

En este tutorial creó un proyecto de aplicación web de sistema de archivos que contiene dos bases de datos. Lo implementó en una aplicación web de IIS que usa una sola base de datos.

El siguiente tutorial de la serie es Tutorial: Implementar un proyecto de aplicación web con un paquete de implementación web (Parte 2 de 4). En ese tutorial, cambiará la estructura de una de las bases de datos, cambiará las páginas web y, a continuación, implementará los cambios.

Vea también

Conceptos

Asignación de contenido de implementación ASP.NET