2008-09-04 12 views
10

He actualizado una aplicación de MS Visual Studio de VS 2003 a VS 2008 (Targeting .NET 2.0). Como parte del proceso de conversión, el asistente dijo que necesitaba dar el paso adicional de Convertir mi proyecto a un sitio web al hacer clic con el botón secundario y blah blah blah ...¿Qué significa "Convertir a sitio web" de VS 2008?

No seguí instrucciones y parece que la aplicación web estar trabajando bien

Mi pregunta es, ¿debería preocuparme por llevar esto a un sistema de producción? Qué está pasando aquí?

Respuesta

8

Hay dos tipos de aplicaciones web en ASP.NET: el sitio web y el proyecto de aplicación web. La diferencia entre los dos se discuten aquí:

Difference between web site and web applications in Visual Studio 2005

Convertir a sitio web le permite convertir un proyecto de aplicación Web en un sitio Web.

Visual Studio 2003 utilizó el estilo de proyecto de aplicación web, pero inicialmente solo VS2005 admitió sitios web. VS2005 SP1 trajo de vuelta las aplicaciones web.

Si no desea convertir su proyecto a un sitio web, aplique SP1 si está utilizando VS2005. VS2008 puede admitir cualquiera.

3

Convertir a sitio web mueve todas sus declaraciones de control de la clase de página principal a un archivo secundario (yourpage.aspx.designer.cs).

Hace esto usando una clase parcial. Es decir, la misma clase para su página, pero dividida en dos archivos separados.

Esto permite que el diseñador de VS2k5 (y VS2k8) genere código para sus páginas sin dañar el espagueti de código generado en el archivo de clase principal.

No necesita hacer este paso para construir el proyecto, pero si continúa manteniendo el proyecto, también lo hará.

EDITAR:

Oye mira, MSDN me hace copias de seguridad:

Para convertir el código para utilizar el modelo de clase parcial

  1. Asegúrese de que el código se compila sin errores.
  2. En el Explorador de soluciones, haga clic con el botón derecho en el nombre del proyecto y haga clic en Convertir a aplicación web. Este comando itera a través de cada página y el control del usuario en el proyecto. Mueve todas las declaraciones de control a un archivo .designer.cs o designer.vb. También agrega declaraciones de controlador de eventos al marcado de control de servidor en los archivos .aspx y .ascx.
  3. Cuando el proceso haya finalizado, verifique la ventana Lista de tareas para ver si se informan errores de conversión.
  4. Si la Lista de tareas muestra errores, haga clic con el botón derecho en la página correspondiente en el Explorador de soluciones y seleccione Ver código y Ver archivo genérico de código para examinar el código y solucionar problemas.
  5. Vuelva a compilar el proyecto para asegurarse de que se compila sin errores.
1

Hay dos tipos de aplicaciones web en ASP.NET: El sitio Web y proyecto de aplicación Web. Convertir a sitio web le permite convertir un proyecto de aplicación web a un sitio web.

Por lo que yo puedo recordar, convertir a un sitio web no hace esto, el proyecto de aplicación Web es una estructura de la aplicación regular con su típica \ bin etc.

El proyecto de sitio web en vez está basada en el concepto de un directorio App_Code para clases, y un directorio App_Date para datos, con sus archivos ASPX regulares yendo a cualquier parte. La idea es evitar tener que precompilar en DLL antes de la implementación, lo que puede ser más fácil en algunas situaciones de alojamiento compartido.

No conozco ningún asistente que reestructure el proyecto entre estos tipos, pero podría estar equivocado.

1

Convertir al sitio de Internet se mueve todas sus declaraciones de control de la clase principal página a un archivo secundario (yourpage.aspx.designer.cs).

¿Por qué querría hacer esto? Ya es suficientemente malo que haya un archivo .js .css .vb .aspx para cada página. ¿Realmente necesito dividir el .vb en dos archivos más para poder ocultar las declaraciones? page.designer.aspx.vb.h ¿Alguien?

Cuestiones relacionadas