2012-09-10 2 views
4

После того, как некоторые имена запутались, моя команда решила переименовать некоторые проекты и пространства имен для всех существующих файлов кода в проекте. (В Visual Studio 2012)Почему IIS 8.0 Express использует старые имена проектов после переименования в Visual Studio 2012?

Мы изменили:

  • Имен проекта
  • имя сборки, пространство имен по умолчанию, Название и запись продукта в свойствах проекта
  • пространств имен для каждого кода файл в каждом проекте, который был переименован
  • все операторы использования для пересмотренных пространств имен
  • очистил старые DLL-файлы в каталоге/bin (для механизма маршрутизации не найти несколько контроллеров)
  • сами, требуя удаления и повторного добавления проектов к решению (фактические папки и повторно делать ссылки на проекты, которые были переименованы)

После всего этого, IIS 8.0 Экспресс по-прежнему настаивает на использовании старых имен проектов для имен сайтов (при локальной отладке). Как я могу это исправить?

Edit: Реальный вопрос заключается в следующем: Как IIS 8.0 Экспресс определить имя сайта?

Вот такой пропущено из (одного из) в .csproj файлов для веб-сайта

<ProjectExtensions> 
    <VisualStudio> 
    <FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}"> 
     <WebProjectProperties> 
     <UseIIS>True</UseIIS> 
     <AutoAssignPort>True</AutoAssignPort> 
     <DevelopmentServerPort>52143</DevelopmentServerPort> 
     <DevelopmentServerVPath>/</DevelopmentServerVPath> 
     <IISUrl>http://localhost:53177/</IISUrl> 
     <NTLMAuthentication>False</NTLMAuthentication> 
     <UseCustomServer>False</UseCustomServer> 
     <CustomServerUrl> 
     </CustomServerUrl> 
     <SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile> 
     </WebProjectProperties> 
    </FlavorProperties> 
    </VisualStudio> 
</ProjectExtensions> 

... и ничего для названия сайта.

+0

Пожалуйста, прочтите http://meta.stackexchange.com/questions/19190/should-questions-include-tags-in-their-titles, если вы хотите знать, почему я изменил свой титул. – Patrick

+0

Спасибо за это, как за изменение, так и за ссылку. –

ответ

6

Проблема не в проекте вообще.

В файле Applicationhost.config (iis.net link), как правило, в

(user-dir)\My Documents\IISExpress\config\applicationhost.config

Есть настройки для сайта. Просто измените атрибут имени на сайте.

 <site name="MvcApplication1" id="3"> 
      <application path="/" applicationPool="Clr4IntegratedAppPool"> 
       <virtualDirectory path="/" physicalPath="(whateverpath)\My Documents\Visual Studio 2012\Projects\MvcApplication1\MvcApplication1" /> 
      </application> 
      <bindings> 
       <binding protocol="http" bindingInformation="*:57733:localhost" /> 
      </bindings> 
     </site> 
+0

В дополнение к тому, что [Christopher Stevenson] (https://stackoverflow.com/users/612512/christopher-stevenson) сказал, у меня также была дополнительная запись '' в ** applicationhost.config **, которую мне пришлось удалить , По каким-то причинам шаги, которые я сделал при переименовании, оставили старую запись со старым именем _and_ и добавили новую. Я рекомендую искать в этом файле любые другие экземпляры старого имени проекта. – Ayeinbran

0

Вам также придется искать и изменять эти имена в файлах csproj и sln-файлах (которые в основном представляют собой файлы xml с расширениями файлов, которые использует VS).

Прежде всего, создайте резервную копию всех ваших вещей, на всякий случай. Затем сделайте текстовый поиск для старых имен (надеюсь, что они не были вызваны что-то вроде «if») в файлах csproj/sln. Измените имена, а затем попробуйте запустить.

Я не знаю об инструменте или автоматическом способе этого делать, но я успешно сделал это вручную, как описано выше.

+0

Старые имена были вырезаны вышеуказанными шагами: в соответствующих файлах .csproj и .sln нет текстовой строки исходного пространства имен и/или имени проекта. (Я только что проверил с помощью Notepad ++) –

0

Вы перенастроили IIS Express? В разделе «Свойства» на вкладке «Веб» нажмите «Создать виртуальный каталог»

+0

К сожалению, щелчка по созданию виртуального каталога была недостаточной для изменения имени, которое IIS отображает для сайта –

+0

Возможно, вам придется удалить виртуальный каталог из IIS Express, а затем воссоздать его. Перейдите в applicationhost.config в папку Мои документы \ IIS Express и удалите записи для него. Не забудьте закрыть IIS Express. –

Смежные вопросы