Как обновить веб-приложение IIS 6, чтобы оно открывалось в Visual Studio на компьютере с IIS 7 - PullRequest
10 голосов
/ 09 июля 2009

Мои веб-приложения, созданные в VS 2008 на Windows Server 2003, отказываются открываться в VS 2008 на Windows Server 2008.

«Проект веб-приложения« MyProjectName »настроен на использование IIS. Для доступа к локальным веб-сайтам IIS необходимо установить следующие компоненты IIS: аутентификация на основе метабазы ​​IIS 6 и совместимости конфигурации IIS 6».

Я не хочу иметь ничего общего с IIS 6, поэтому я не устанавливаю эти компоненты. Я хочу чистый IIS 7.

Есть ли в файле проекта инструмент обновления или что-то, что я могу изменить, чтобы они могли открываться в visual studio?

Ответы [ 8 ]

13 голосов
/ 09 июля 2009

Это странно. Единственное, что я заменяю, это "<IISUrl> http://localhost/site </IISUrl>"; с "<CustomServerUrl> http://localhost/site </CustomServerUrl>" в файле проекта, и проект загружается и отлаживается (как администратор) просто отлично.

Почему это изменение имени тега, которое, по-видимому, предоставляет той же информации - URL проекта - достаточно для предотвращения загрузки всего проекта. Неприемлемо.

2 голосов
/ 22 сентября 2011

Я столкнулся с той же проблемой при обновлении веб-приложения с VS2003 до VS2010. В файле решений был раздел, который выглядел так:

Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MyProject", "http://localhost/MyProject/MyProject.csproj", "{B5D94F04-9681-4391-8323-E39BE66CD0C1}"
    ProjectSection(ProjectDependencies) = postProject
    EndProjectSection
EndProject

Я заменил «http://localhost/MyProject/MyProject.csproj"» на «MyProject.csproj». Я также удалил файл MyProject.csproj.webinfo, поскольку он имел ссылку на тот же виртуальный каталог IIS.

Как только я сделал эти два изменения, мастер конвертации VS2010, казалось, работал правильно, и мое веб-приложение открылось. Мой проект больше не зависел от IIS.

1 голос
/ 26 августа 2010

Другой постер опубликовал следующее:

Вам нужно зайти в Панель управления, Поворот Функции Windows включены или выключены, разверните Информационные службы Интернета и найти флажок "IIS 6 метабазы ​​и IIS 6 "Совместимость конфигурации". Это исправлена ​​проблема в моем случае (но я на Windows 7)

Несмотря на то, что этот флажок в Windows 7 содержит слова «IIS 6», это не означает, что вы не можете использовать IIS 7. На самом деле, всплывающая подсказка для флажка для включения «IIS» 6 «Совместимость конфигурации Metabase и IIS 6» говорит следующее:

«Установите уровень метабазы ​​IIS и совместимости, чтобы позволить вызовам метабазы ​​взаимодействовать с новым хранилищем конфигурации IIS 7.»

Мне кажется, это не имеет ничего общего с IIS 6, а также с настройкой IIS 7 для взаимодействия с унаследованными приложениями. Кроме того, установив этот флажок, я решил эту проблему.

1 голос
/ 02 сентября 2009

У меня была похожая проблема при открытии проекта веб-приложения, который я ранее обновил с .Net 1.1 Visual Studio 2008 не позволил мне открыть проект на виртуальном гостевом сервере, потому что в моей операционной системе у меня не установлен IIS или связанный компонент решение состоит в том, чтобы щелкнуть правой кнопкой мыши имя проекта, которое не удалось загрузить, - либо открыть файл .csproj в вашей файловой системе - и изменить узел UseIIS на false

1 голос
/ 09 июля 2009

Поскольку один тег говорит о том, что IIS является хостом сайта, а другой говорит, что пользовательский (другой) веб-сервер - это.

На пользовательском сервере VS не пытается управлять чем-либо.

В IIS он хочет иметь возможность настраивать такие вещи, как виртуальные каталоги, разрешения, конфигурацию ASP.NET и т. Д.

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

0 голосов
/ 29 июля 2012

Откройте файл * .csproj в блокноте и найдите все ссылки на True, переключите их на false.

Ваш проект откроется. Вы можете дополнительно редактировать свойства, используя графический интерфейс, если хотите (порт, URL и т. Д.)

0 голосов
/ 01 октября 2009

Я нашел один простой пост в блоге, который немного объясняет проблему и то, как этот конкретный плакат решил ее, используя ту же самую память, которую вы предложили (взломав файл проекта). http://dean -o.blogspot.com / 2009/04 / открытая МИС-прошел-зрительно-студия-project.html

0 голосов
/ 21 августа 2009

Вам необходимо перейти к панели управления, включить или отключить функции Windows, развернуть службы IIS и найти флажок «Совместимость конфигурации IIS 6 с метабазой и IIS 6». Это исправлено в моем случае (но я на Windows 7)

Подробнее здесь: http://msdn.microsoft.com/en-us/library/aa964620.aspx

...