2010-04-26 11 views
6

Nous avons récemment migré de VS 2008 vers VS 2010. La migration s'est bien déroulée, à l'exception de notre projet Web. Avant, dans VS 2008, le site apparaissait comme http://localhost/Website. Maintenant, il apparaît comme C: ... \ Website. Il semble que lorsque nous avons effectué la migration, VS a commencé à la traiter comme un site Web de système de fichiers.Conversion du site Web du système de fichiers vers le site Web d'IIS

J'ai essayé de supprimer le site existant et de l'ajouter de nouveau en tant que site Web existant, mais il l'affiche toujours en tant que C: ... \ Website. Existe-t-il un moyen de le convertir pour l'afficher en tant que http://localhost/website, et exécuter via IIS, par opposition au serveur de développement ASP.NET par défaut?

+1

Vous devriez publier ceci sur serverfault. Pas vraiment une question de programmation – adhanlon

+3

J'ai pensé que c'était une question de programmation en ce qui concerne Visual Studio et ses projets. – Noah

+0

@ Silmaril89: bien sûr, c'est lié à la programmation - Visual Studio 2010 a brisé le site. Il va devoir utiliser Visual Studio pour résoudre le problème. –

Répondre

8

Un merci spécial à John Dundon de Microsoft pour m'avoir aidé à résoudre le problème. Voici ce qu'il a dit:

Merci pour tous les détails. Cela ressemble en fait à un comportement bizarre dans VS que je pense que je peux vous aider à travailler autour.

Je crois que la raison pour laquelle il est se rappeler d'utiliser le serveur de développement local est parce qu'il a obtenu stocké dans le fichier SUO. Donc, il y a deux façons de fixer ceci:

  1. Réouvrez votre solution de contrôle de code source en tant qu'administrateur sur la machine avec IIS installé et tout devrait se télécharger sur sa place
  2. Si vous fermez VS, supprimez le fichier SUO (notez - ceci effacera quelques paramètres sur l'état de votre solution mais ne devrait pas causer de véritable perte de données ), puis rouvrira la solution , il devrait vous demander à re-downloa d ce site Web particulier et essaiera de le rendre à nouveau un site web IIS .

Notez cependant que que depuis votre répertoire virtuel existe déjà sur votre machine, il va vous demander si vous voulez utiliser - Je suppose que vous faites, mais elle remplace tous les fichiers quand c'est le cas.

Laissez-moi savoir si cela fonctionne pour vous (et alors que vous devriez techniquement pas besoin à, il peut être une bonne idée de sauvegarder tout travail que vous avez fait dans ce engagement qui n'a pas été vérifié dans avant d'essayer ceci).

J'ai suivi son conseil et supprimé mon fichier SUO et ré-ouvert la solution. Le site Web a été automatiquement corrigé en tant que http://localhost/Website et il a également vérifié le fichier .SLN, et lorsque je l'ai enregistré, il a également résolu le problème pour les autres développeurs. J'espère que cette solution aidera aussi les autres avec ce problème original.

+1

+1 pour avoir posté la réponse! –

+0

Mes projets basés sur le système de fichiers ne sont pas dans le contrôle de la source et quand j'ai essayé de supprimer le fichier suo et de redémarrer VS2008, il a juste chargé les mêmes projets basés sur le système de fichiers. – chugh97

+0

chugh97, je ne suis pas sûr. C'était VS2010, donc je ne sais pas si cela a fait une différence là ou pas. – Noah

2

Regardez dans les propriétés du projet, dans l'onglet Web. Vous pourrez choisir d'utiliser IIS ou le serveur de développement et le répertoire virtuel à utiliser.

+0

Je vois dans les options de démarrage où je peux changer de «Utiliser le serveur Web par défaut» à «Utiliser un serveur personnalisé» et définir l'URL de base: http: // localhost/Website. Cela lui permet de fonctionner correctement, mais c'est plutôt un travail. Y a-t-il un moyen de le réparer de façon permanente? Ou faites-vous référence à une zone différente? – Noah

+0

@Noah: comment est-ce une solution de contournement? Existe-t-il d'autres différences entre un site IIS et un site basé sur un fichier? –

+0

Je ne suis pas sûr de savoir quelles sont les différences. Avec cette approche cependant, chaque boîte de dev doit être configurée pour pointer vers un répertoire IIS localhost à travers les propriétés du projet, par opposition au simple fonctionnement du projet. J'ai envoyé le Q à MS pour voir s'ils pourraient me dire la différence entre le 2. – Noah