Conversión de proyectos web de Visual Studio .NET
Actualización: noviembre 2007
Microsoft Visual Studio 2005 administra los proyectos y los archivos de los sitios Web de un modo distinto de como lo hacen Visual Studio .NET 2002 y Visual Studio .NET 2003 (a los que en el resto de este tema se hace referencia de forma genérica como Visual Studio .NET). Como resultado, cuando desee utilizar Visual Studio 2005 para trabajar con un proyecto creado en Visual Studio .NET, el proyecto se convertirá en proyecto de aplicación Web. El proceso se produce automáticamente cuando se abre un proyecto de Visual Studio .NET en Visual Studio 2005; el asistente de conversión convertirá la aplicación Web y minimizará la necesidad de edición manual para finalizar la conversión. En este tema se describe el proceso de conversión y se especifican los cambios que se realizan en los archivos de Visual Studio .NET. Para obtener más información acerca de proyectos de aplicaciones Web, vea Información general sobre proyectos de aplicaciones web.
El objetivo general del proceso de conversión consiste en permitirle que abra un proyecto de Visual Studio .NET en Visual Studio 2005, convertirlo automáticamente y que se pueda ejecutar sin que la funcionalidad se vea alterada. El proceso de conversión es unidireccional: después de convertir un proyecto a Visual Studio 2005, no podrá trabajar con él en Visual Studio .NET. Aunque Visual Studio 2005 efectúa cambios en los archivos de un proyecto, puede realizar copias de seguridad de los archivos originales. Aún podrá abrir los archivos de Visual Studio 2005 en Visual Studio .NET como archivos independientes (sin determinadas características, como IntelliSense), pero el proyecto en general habrá quedado alterado. Si es necesario, puede restaurar el proyecto de Visual Studio a partir de los archivos de copia de seguridad.
Nota de seguridad: |
---|
Antes de convertir un proyecto existente al formato de Visual Studio 2005, examine todos los archivos existentes, especialmente si no es la única persona que ha modificado el proyecto. Busque archivos que no le resulten familiares. Es una medida para protegerse de la importación de código malintencionado en Visual Studio. En general, se recomienda ejecutar Visual Studio 2005 como usuario normal y no como administrador a no ser que necesite llevar a cabo tareas administrativas. |
En este tema se incluye información acerca de los siguientes aspectos relacionados con la conversión de proyectos Web al formato de Visual Studio 2005:
Proceso de conversión de Visual Studio 2005
Soluciones y proyectos
Conversión de la configuración del proyecto
Convertir configuraciones específicas
Componentes de datos
Módulos de código
Servicios Web
Conversión y control de código fuente
Proceso de conversión de Visual Studio 2005
En la siguiente lista se resume el proceso básico de conversión de proyectos Web de Visual Studio .NET a Visual Studio 2005:
En Visual Studio 2005, abra un sitio Web existente de Visual Studio .NET. Puede abrir cualquiera de los archivos y directorios siguientes:
Un archivo de solución (.sln)
Un archivo de proyecto (.vbproj, .csproj o .vjp)
El directorio raíz del sitio Web
Si se encuentra un archivo de proyecto, Visual Studio 2005 invocará al asistente de conversión para convertir el proyecto Web.
Nota: En Visual Studio 2005, los proyectos Web ya no necesitan un archivo de proyecto; todos los archivos que se encuentran en la carpeta del proyecto Web se consideran parte de éste.
Para obtener información detallada sobre los pasos del asistente de conversión, vea Cómo: Convertir un proyecto de Visual Studio .NET a Visual Studio 2005.
Visual Studio 2005 convierte la aplicación Web para que, en lugar de utilizar ASP.NET versión 1.x, utilice la versión 2.0. Por ejemplo, el atributo CodeBehind en los controles de usuario y las páginas Web ASP.NET cambia al nuevo atributo CodeFile. Si se modifica un archivo, no se conservan los permisos del archivo original: el nuevo archivo tendrá permisos de lectura y escritura, que se proporcionan a los usuarios. Para obtener detalles acerca de los cambios realizados en los archivos, vea Conversión de soluciones Web y archivos de proyectos.
Los archivos de clase independientes se mueven al directorio App_Code.
No se tocan otros tipos de archivos. Esto incluye gráficos, archivos HTML, etc. Además, en el proceso de migración se omiten los archivos que están fuera de la aplicación. Esto sirve como medida de prevención ante la posibilidad de que un usuario malintencionado obtenga acceso a archivos que están fuera de la aplicación mediante rutas de acceso relativas de un archivo de proyecto.
Se crea un informe denominado ConversionReport.txt, que se almacena en el directorio raíz del proyecto Web convertido. En este archivo de informe aparecen todos los cambios realizados en el proyecto Web y pueden aparecer comentarios informativos, advertencias y errores que se han detectados durante la conversión. Si selecciona la opción en el asistente de conversión para que se muestre el registro de conversión tras finalizar el asistente, verá un informe de conversión en Visual Studio 2005. Para obtener más información acerca del formato de este informe, vea Formato del informe de conversión de la migración.
Nota: |
---|
Si su proyecto utiliza control de código fuente, los archivos del proyecto Web no estarán bajo el control de código fuente una vez convertidos al formato de Visual Studio 2005. |
Soluciones y proyectos
Si se abre un archivo de solución en Visual Studio 2005, Visual Studio inspecciona el contenido del archivo .sln para determinar qué tipos de proyectos contiene. Visual Web Developer sólo convertirá aplicaciones Web (páginas Web y servicios Web). Si se abre un archivo de solución que contiene otros tipos de proyectos, como proyectos de formularios Windows Forms o aplicaciones de consola, sólo se abrirán y convertirán los proyectos Web.
Si abre un archivo de proyecto, Visual Studio 2005 convierte los archivos a los que hace referencia ese proyecto. No se intenta convertir archivos que se encuentren en el mismo directorio que los archivos de proyecto si no forman parte del proyecto. Esto puede provocar errores de compilación. Por ejemplo, si tiene un archivo con el nombre Page1.aspx y un archivo de código subyacente con el nombre Page1.aspx.cs que se encuentra en la carpeta pero no está incluido en el archivo de proyecto, el asistente de conversión no convertirá ningún archivo. Cuando realice la compilación, se producirán errores de compilación porque se considerará que tanto el archivo Page1.aspx como el archivo Page1.aspx.cs forman parte de la aplicación Web convertida.
Si el proyecto contiene directorios con nombres reservados en Visual Studio 2005, como App_Data o App_GlobalResources, Visual Studio 2005 anexará "_old" a los nombres de los directorios existentes (por ejemplo, App_Data_old). Para resolver cualquier referencia errónea que pueda derivarse, deberá cambiar el código manualmente para referirse al nuevo directorio, o bien trasladar el código a los directorios reservados, como App_Data o App_GlobalResources. Para obtener más información, vea Carpetas de código compartido en sitios Web ASP.NET.
Conversión de la configuración del proyecto
Dado que Visual Studio 2005 no mantiene la configuración en archivos de proyecto, la configuración de los proyectos de Visual Studio .NET se convierte al archivo Web.config o no se convierte si no es pertinente en Visual Studio 2005 como lo fuera en Visual Studio .NET.
Para obtener información detallada, vea Conversión de la configuración de proyectos Web.
Convertir configuraciones específicas
Si el proyecto de origen contiene una configuración de generación personalizada, el proceso de conversión le solicita que seleccione qué configuración desea convertir. Su elección determinará las opciones de proyecto que se utilizarán durante la conversión para configurar el sitio Web en su nuevo formato.
Si el proyecto de origen contiene sólo las configuraciones de generación predeterminadas (Release y Debug), el proceso de conversión utiliza la configuración Debug.
Componentes de datos
El modelo para agregar acceso a datos a las páginas Web ha cambiado en Visual Studio 2005. Aunque en Visual Studio 2005 aún se utilizan componentes ADO.NET para el acceso a datos, las páginas de Visual Studio 2005 controlan el acceso a datos mediante controles de orígenes de datos, que encapsulan objetos de conexión de datos, objetos de comandos de datos y conjuntos de datos o lectores de datos. Para obtener más información, vea Información general sobre los controles de origen de datos y Información general sobre las expresiones de enlace de datos.
El modelo de trabajo de Visual Studio .NET con instancias explícitas de conexiones de datos, comandos de datos y conjuntos de datos aún se admite en Visual Studio 2005. Cuando Visual Studio 2005 convierte páginas o archivos que implican acceso a datos, los objetos de datos existentes se convierten de manera que permanecen intactos y siguen funcionando en Visual Studio 2005 del mismo modo que en Visual Studio .NET. Sin embargo, no podrá trabajar con esos componentes de datos en el diseñador de páginas Web de Visual Studio 2005 (vista Diseño) porque el diseñador no admite estos objetos. Aún podrá trabajar con ellos en la vista Código fuente.
Conjuntos de datos
Durante la conversión, Visual Studio 2005 convierte el esquema (un archivo .xsd) de un conjunto de datos con tipo y lo almacena en el directorio App_Code. El archivo .vb o .cs que representa la clase del conjunto de datos (que se genera en Visual Studio) no se convierte porque el sitio Web puede hacer referencia al archivo .xsd automáticamente.
Módulos de código
Los módulos de código independientes (archivos .vb y .cs) se mueven tal cual al directorio App_Code. (Esto no se aplica a los archivos .vb y .cs asociados a páginas Web u otros archivos ASP.NET). Cualquier declaración de miembro que se marque como Friend o Internal se cambia a Public.
Para los archivos .vb, el proceso de conversión agrega una instrucción Namespace que señala al directorio raíz del proyecto Web. Además, en el proceso de conversión se agregarán todas las clases que ASP.NET no haya importado automáticamente al atributo compilerOptions del elemento de compilador.
Servicios Web
Los servicios Web se convierten esencialmente al mismo formato que tienen en Visual Studio .NET. El archivo de clase para un servicio Web (archivo .asmx .vb o .asmx .cs) se mueve al directorio App_Code. Cualquier miembro que se marque como Friend o Internal se cambia a Public. El atributo CodeBehind de la directiva @ Page en el archivo .asmx se actualiza para que señale la nueva ubicación del código.
En los servicios Web de Visual Basic, se agrega una instrucción Namespace al archivo de clase que el espacio de nombres raíz define en el proyecto Web. En el proceso de conversión también se agregará una instrucción Imports al archivo de Visual Basic para que se definan todas las importaciones del servicio Web que aún no haya realizado ASP.NET de forma predeterminada.
Conversión y control de código fuente
No se convierten las altas de código fuente. Después de la conversión, los archivos de un sitio Web dejan de estar bajo el control de código fuente.
Vea también
Tareas
Cómo: Convertir un proyecto de Visual Studio .NET a Visual Studio 2005
Conceptos
Conversión de soluciones Web y archivos de proyectos
Conversión de la configuración de proyectos Web
Formato del informe de conversión de la migración