2010-04-26 28 views
6

Recientemente migramos de VS 2008 a VS 2010. La migración fue bien, excepto en nuestro proyecto web. Antes, en VS 2008, el sitio se mostraba como http://localhost/Website. Ahora, aparece como C: ... \ Sitio web. Parece que cuando hicimos la migración, VS comenzó a tratarlo como un sitio web de sistema de archivos.Convertir el sitio web del sistema de archivos al sitio web de IIS

He intentado eliminar el sitio existente y volver a agregarlo como un sitio web existente, pero todavía se muestra como C: ... \ Sitio web. ¿Hay alguna forma de convertirlo de nuevo para mostrarlo como http://localhost/website y ejecutarlo a través de IIS, a diferencia del servidor de desarrollo de ASP.NET predeterminado?

+1

Debe publicar esto en serverfault. No es realmente una pregunta de programación. – adhanlon

+3

Supuse que era una pregunta de programación en relación con Visual Studio y sus proyectos. – Noah

+0

@ Silmaril89: por supuesto está relacionado con la programación: Visual Studio 2010 rompió el sitio. También tendrá que usar Visual Studio para solucionar el problema. –

Respuesta

8

Agradecimiento especial a John Dundon en Microsoft por ayudarme a resolver el problema. Esto es lo que dijo:

Gracias por todos los detalles. Esto realmente suena como un comportamiento peculiar en VS que creo que puedo ayudarte a trabajar alrededor.

Creo que la razón por la que se recuerda para usar el servidor de desarrollo local es porque se almacenó en el archivo SUO. Así que hay dos formas posibles de solucionar esto:

  1. Vuelva a abrir su solución de control de origen como administrador en la máquina con IIS instalado y todo debería quedar descargado a su lugar correcto
  2. Si cierra VS, borre el archivo SUO (tenga en cuenta que esto borrará algunos ajustes del sobre el estado de su solución pero no debería causar ninguna pérdida real de datos ), y luego vuelva a abrir la solución , debería preguntarle a re-downloa d ese sitio web en particular e intentará convertirlo en un sitio web IIS de nuevo.

Obsérvese, sin embargo a pesar de que desde el directorio virtual ya existe en su máquina, que va a preguntarle si desea utilizarlo - Asumo que hace, pero va a sobrescribir los archivos cuando lo hace

Vamos a saber si esto funciona para usted (y mientras que técnicamente no debería ser necesario a, puede ser una buena idea hacer copias de seguridad cualquier trabajo que han hecho en este alistamiento que no ha sido chequeó en antes de intentar esto).

Seguí su consejo y eliminé mi archivo SUO y volví a abrir la solución. El sitio web se corrigió automáticamente como http://localhost/Website y también comprobó el archivo .SLN, y cuando lo registré, también solucionó el problema para otros desarrolladores. Espero que esta solución ayude a otros también con este peculiar problema.

+1

+1 para publicar la respuesta! –

+0

Mis proyectos basados ​​en el sistema de archivos no están en control de fuente y cuando intenté eliminar el archivo suo y reiniciar VS2008, simplemente cargué los mismos proyectos basados ​​en el sistema de archivos. ¿Alguna solución alternativa? – chugh97

+0

chugh97, no estoy seguro. Esto era VS2010, así que no sé si marcó la diferencia allí o no. – Noah

2

Busque en las propiedades del proyecto, en la pestaña Web. Podrá seleccionar si desea usar IIS o el servidor de desarrollo, y qué directorio virtual usar.

+0

Veo en las opciones de inicio donde puedo cambiarlo de "Usar servidor web predeterminado" a "Usar servidor personalizado" y configurar la URL base: como http: // localhost/Sitio web. Eso le permite funcionar correctamente, pero es más una solución alternativa. ¿Hay alguna manera de arreglarlo permanentemente? ¿O te refieres a un área diferente? – Noah

+0

@Noah: ¿cómo es eso una solución? ¿Hay otras diferencias entre un sitio de IIS y un sitio basado en archivos? –

+0

No estoy seguro de cuáles son las diferencias. Sin embargo, con ese enfoque, cada cuadro dev necesita configurarse para que apunte a un directorio localhost IIS a través de las propiedades del proyecto, en lugar de simplemente hacer que el proyecto funcione inicialmente. Envié la Q a MS para ver si podían decirme la diferencia entre el 2. – Noah

Cuestiones relacionadas