Guía paso a paso para convertir proyectos web de Visual Studio .NET 2002/2003 a Visual Studio 2005

 

Equipo de herramientas y plataformas web
Microsoft Corporation

Julio de 2006

Resumen: le guía por el proceso de conversión de un proyecto web existente de Visual Studio .NET 2003 en un proyecto de aplicación web en Visual Studio 2005 (7 páginas impresas)

Migración de un proyecto web de Visual Studio .NET 2003 a un proyecto de aplicación web
   Paso 1: Instalar la versión preliminar del proyecto de aplicación web de Visual Studio 2005
   Paso 2: Copia de seguridad de los proyectos de Visual Studio .NET 2003
   Paso 3: Abrir y comprobar el proyecto web de Visual Studio .NET 2003
   Paso 4: Migrar la solución a Visual Studio 2005
   Paso 5: Comprobar en Visual Studio 2005
   Paso 6: Clases de Code-Behind covert a clases parciales
   Paso 7: Examen y resolución de problemas de cumplimiento de XHTML
El futuro de los proyectos de aplicación web

Migración de un proyecto web de Visual Studio .NET 2003 a un proyecto de aplicación web

En este artículo se explica el proceso de conversión de un proyecto web de Visual Studio .NET 2003 existente en un proyecto de aplicación web en Visual Studio 2005. El modelo de proyecto de aplicación web usa el mismo enfoque conceptual que un proyecto web en Visual Studio .NET 2003, incluido un archivo de proyecto para incluir y excluir archivos, compilar en un único ensamblado, etc. En general, los proyectos de aplicación web no requieren ningún cambio arquitectónico después de la conversión.

En este artículo se da por supuesto que está trabajando en C#. Los pasos para trabajar con Visual Basic son muy similares, pero los nombres de archivo y algunos del código variarán.

Paso 1: Instalar la versión preliminar del proyecto de aplicación web de Visual Studio 2005

Asegúrese de que ha instalado Proyectos de aplicación web en Visual Studio 2005 siguiendo los pasos descritos en Instalación de proyectos de aplicación web.

Paso 2: Copia de seguridad de los proyectos de Visual Studio .NET 2003

Asegúrese absolutamente de guardar una copia de seguridad de los proyectos y soluciones web de Visual Studio .NET 2003 antes de intentar cualquier migración. Los pasos siguientes se han probado con la versión preliminar de proyectos de aplicación web. Sin embargo, podría haber problemas y es posible que tenga que restaurar la solución .NET 2003 de Visual Studio.

Paso 3: Abrir y comprobar el proyecto web de Visual Studio .NET 2003

Antes de migrar un proyecto, abra la solución existente de Visual Studio .NET 2003, compárela y ejecútela. Dedicar unos minutos a comprobar que todo funciona antes de migrar puede ahorrar problemas más adelante, especialmente si la causa de errores es un cambio de directorio de último minuto o similar.

Paso 4: Migrar la solución a Visual Studio 2005

Cierre la solución en Visual Studio .NET 2003 e inicie Visual Studio 2005. En el menú Archivo , haga clic en Abrir archivoy, a continuación, vaya al archivo .sln de la solución que desea migrar. Esto inicia el Asistente para conversión de Visual Studio 2005:

Aa479567.wap_11(en-us,MSDN.10).gif

Figura 1. Asistente para conversión de Visual Studio 2005

Haga clic en Siguiente para continuar con el asistente, aceptando todos los valores predeterminados. Visual Studio 2005 convertirá la solución y sus archivos de proyecto contenidos para usar el formato MSBuild, que es el nuevo formato de archivo de proyecto en Visual Studio 2005.

Como parte de la migración, Visual Studio 2005 genera un archivo de registro basado en XML que proporciona un resumen del proceso de conversión, marcando los problemas detectados durante la migración. De forma predeterminada, el archivo de registro de conversión se guarda en el mismo directorio que el archivo .sln. Si tiene problemas más adelante al compilar el proyecto, es posible que tenga que volver a hacer referencia al archivo de registro de conversión.

Paso 5: Comprobar en Visual Studio 2005

Después de actualizar los archivos de solución y proyecto al formato de Visual Studio 2005, valide que la aplicación se compila sin errores y se ejecuta según lo previsto. En este momento, los errores o advertencias más comunes serán de estos tipos:

  • Entra en conflicto con los nombres introducidos en la versión 2.0 de .NET Framework.
  • Advertencias sobre el uso de miembros obsoletos.

Para corregir conflictos de nomenclatura, puede calificar completamente los nombres existentes con un espacio de nombres para quitar la ambigüedad o cambiar el nombre de los miembros para que no entren en conflicto.

Si ve una advertencia sobre el uso de miembros obsoletos, el mensaje de advertencia suele sugerir api alternativas para usar. En estos casos, puede seguir usando los miembros obsoletos en la versión 2.0 de .NET Framework. Sin embargo, los miembros se quitarán en la próxima versión principal de .NET Framework, por lo que es recomendable quitar los miembros y sustituir las alternativas sugeridas.

Al ejecutar la aplicación web, es posible que vea un error que indica "Lista de directorios denegada" que sugiere que un directorio virtual no permite que se muestre su contenido. Si ve este mensaje de error, haga lo siguiente:

  1. Cierre el explorador.
  2. En Explorador de soluciones, haga clic con el botón derecho en la página de inicio de la aplicación y, a continuación, haga clic en Establecer como página de inicio para asegurarse de que la página correcta se invoca cuando se ejecuta la aplicación.
  3. Vuelva a ejecutar la aplicación.

Paso 6: Clases de Code-Behind covert a clases parciales

Como se indicó anteriormente, en Visual Studio 2005, los proyectos de aplicaciones web usan clases parciales para almacenar código generado por el diseñador. Estas clases se almacenan en un archivo independiente del archivo de código subyacente. De forma predeterminada, el Asistente para la conversión de proyectos web de Visual Studio 2005 no crea un archivo *.designer.cs (o *.designer.vb) para páginas web (archivos .aspx) o controles de usuario (archivos .ascx). En su lugar, el código tendrá un aspecto y funcionará igual que en Visual Studio .NET 2003.

Nota El asistente realiza el número mínimo de cambios en los archivos de código durante la migración para ayudar a garantizar una conversión fluida a proyectos de aplicaciones web en Visual Studio 2005.

Puede mantener el código en este formato. Si lo hace, debe actualizar manualmente las declaraciones de campo de control en los archivos de código subyacente, pero todo lo demás funcionará correctamente en Visual Studio 2005.

Para aprovechar la capacidad del editor de mantener declaraciones de campo en código generado, debe actualizar las páginas y los controles para usar el modelo de clase parcial introducido en ASP.NET 2.0. Las clases parciales facilitan la organización del código generado y el código personalizado para los archivos de código subyacente. Para obtener más información sobre los archivos .designer.cs, vea Escenario 1: Crear un nuevo proyecto de aplicación web.

Para migrar el código para usar el modelo de clase parcial, primero asegúrese de que el código se compila sin errores. A continuación, en Explorador de soluciones, haga clic con el botón derecho en el nombre del proyecto y haga clic en Convertir en aplicación web. Este comando recorre en iteración cada página y control de usuario del proyecto, mueve todas las declaraciones de control a un archivo .designer.cs y agrega declaraciones de controlador de eventos al marcado de control de servidor en los archivos .aspx y .ascx.

Nota Otra opción es usar el comando Convertir en aplicación web en páginas individuales. Puede hacerlo primero en algunas páginas si desea watch estrechamente los cambios realizados para cada página antes de aplicar el cambio a toda la aplicación.

Aa479567.wap_12(en-us,MSDN.10).gif

Ilustración 2. Conversión de una sola página al formato de proyecto de aplicación web

Cuando finalice el proceso, compruebe la ventana Lista de tareas para ver si se notifican errores de conversión. Si la lista de tareas muestra errores, haga clic con el botón derecho en la página correspondiente en Explorador de soluciones y elija Ver código y Ver archivo de generación de código para examinar el código y corregir problemas. Tenga en cuenta que los errores y advertencias que aparecen en la ventana Lista de tareas persisten entre sesiones de Visual Studio. Una vez corregidos los errores enumerados en la ventana, puede borrar los elementos de la lista de tareas.

Nota El comando Convertir en aplicación web no se puede deshacer en Visual Studio. El mejor método para revertir los cambios es restaurar desde una copia de seguridad del proyecto de Visual Studio .NET 2003 y, a continuación, volver a ejecutar la migración de Visual Studio 2005, como se describe en el paso 4 anterior.

Ahora vuelva a compilar el proyecto para asegurarse de que se compila sin errores. Un posible origen de errores es si ha modificado las declaraciones de control en una clase de código subyacente y el asistente de conversión controla los cambios incorrectamente.

Desde este punto, al agregar nuevas páginas al proyecto web, usarán de forma predeterminada la plantilla de clase parcial.

Paso 7: Examen y resolución de problemas de cumplimiento de XHTML

De forma predeterminada, Visual Studio 2005 genera y valida el marcado compatible con XHTML. Esto le ayuda a crear aplicaciones web compatibles con estándares y ayuda a minimizar los problemas con la representación específica del explorador. Visual Studio .NET 2003 no generó marcado compatible con XHTML, por lo que es posible que vea problemas de validación y representación con páginas creadas en Visual Studio .NET 2003.

Nota Los errores de validación son informativos solo y se marcan como advertencias. Los errores de validación no impiden que se ejecute una página.

Si no desea ver errores de validación, cambie la configuración de validación HTML de Transición XHTML a Internet Explorer 6.0 (que era la configuración predeterminada de Visual Studio .NET 2003). En el menú Herramientas , haga clic en Opciones. En el cuadro de diálogo Opciones , abra el nodo Editor de texto , el nodo HTML y, a continuación, el nodo Validación . En la lista Destino , seleccione Internet Explorer 6.0 y, a continuación, anule la selección de la casilla Mostrar errores . Tenga en cuenta que esto no corrige errores de validación XHTML; simplemente cambia el esquema de validación a uno que es más compatible con la forma en que visual Studio .NET 2003 generó el marcado y suprime las advertencias de validación.

Aa479567.wap_13(en-us,MSDN.10).gifAa479567.wap_13

Figura 3. Configuración de la validación html

También puede agregar la siguiente sección al archivo Web.config del proyecto, lo que hace que ASP.NET represente el marcado heredado (no compatible con XHTML) desde los controles de servidor:

  <system.Web>
  <xhtmlConformance mode="Legacy" />
</system.Web>

Esto evitará las ligeras diferencias de representación que puede ver entre las páginas mostradas mediante ASP.NET 1.1 y el uso de ASP.NET 2.0. Para obtener más información, vea ASP.NET y XHTML en MSDN Library.

El futuro de los proyectos de aplicación web

Los proyectos de aplicación web proporcionan un modelo de compilación y compilación muy similar al que se usa en Visual Studio .NET 2003. En función de sus requisitos, algunos usuarios encontrarán la nueva opción de proyecto de sitio web en Visual Studio 2005 más adecuada para sus aplicaciones, mientras que otros usuarios prefieren la opción de proyecto de aplicación web. Los proyectos de aplicaciones web proporcionan la mejor ruta de acceso para actualizar las aplicaciones existentes de Visual Studio .NET 2003 a Visual Studio 2005 y son muy recomendables para ese escenario.

Queremos destacar estos puntos importantes sobre el futuro de los proyectos de aplicaciones web de Visual Studio 2005:

  • En el futuro, se admitirá totalmente el modelo de proyecto de sitio web de Visual Studio 2005 y el modelo de proyecto de aplicación web de Visual Studio 2005. Puede elegir el modelo que mejor funcione.
  • En versiones futuras de Visual Studio, se compilará el modelo de proyecto de aplicación web y se admitirán tanto el modelo de proyecto de aplicación web como el modelo de proyecto de sitio web.

© Microsoft Corporation. Todos los derechos reservados.