2015-01-28 3 views
2

ASP.NET C# проект would't загрузки с ошибкой:Visual Studio 2013, IIS, IIS Express - ошибка?

Сайт для URL «http://localhost:51752/», настроенный для веб-проекта «AndroidWS», существует как на локальном веб-сервере IIS и веб-IIS Express сервер. Вам необходимо использовать диспетчер IIS для изменения привязки (ов) этого сайта в IIS.

Если удалить

<site name="AndroidWS" id="1"> ... </site> 

раздел из файла конфигурации IIS Express, я получаю другой тип ошибки:

URL-адрес 'http://localhost:51752/' для веб-проекта 'AndroidWS' настроен на использование IIS Экспресс как веб-сервер, но URL-адрес в настоящее время настроен на локальном веб-сервере IIS. Чтобы открыть этот проект, вы должны использовать диспетчер IIS для удаления привязок с использованием этого URL-адреса с локального веб-сервера IIS.

Но этот проект не настроен на использование IIS Express:

<UseIISExpress>false</UseIISExpress> 
<UseIIS>false</UseIIS> 

Единственный способ открыть этот проект должен установить:

<UseIIS>true</UseIIS> 

Хорошо, это обходной путь, но я мне не очень удобно с ним из-за нашего рабочего процесса в команде - мне нужно вернуть этот параметр к false до каждой регистрации.

PS. Эта ситуация повторяется для всех проектов - Visual Studio говорит, что они настроены на использование IIS Express, но это не так.

+0

Я использую локальный IIS (не IIS Express) и запускаю VS2013 с правами администратора. – plazmer

ответ

0
  1. Когда вы создаете проект типа WebApplication в Visual Studio, у вас есть три варианта для серверов, то есть UseIISExpress, UseIIS и ExternalHost. (Если IIS не установлен, то доступны 2 варианта, то есть IIexprss и внешний хост)
  2. Таким образом, вы должны выбрать один из этих трех вариантов. По умолчанию используется IISExpress. Вы не можете установить для всех параметров сервера значение false в файле проекта. Даже если вы делаете это, Visual Studio предполагает вариант по умолчанию, то есть IISExpress включен.
  3. Если вам нужно использовать локальный IIS, в то время как остальная часть команды использует IISExpress, тогда вы можете выбрать опцию «Local IIS» из раскрывающегося списка серверов и снять флажок «Применить настройки сервера ко всем пользователям», который расположен чуть выше выпадающего списка серверов. Это сохранит настройки конфигурации в файле .csproj.user, который вам не нужно проверять в исходном элементе управления. Таким образом, вы будете использовать локальный IIS, в то время как команда будет продолжать использовать IIS Express.
+0

Никто из нашей команды не использует IISExpress! Я понятия не имею, почему VS предполагает, что проект настроен на его использование. – plazmer

-1

Удалены все сайты из диспетчера IIS, кроме «Веб-сайта по умолчанию», теперь все в порядке.

5

Удаление csproj.user сделал трюк. Сообщение

"xxx is configured to use IIS Express as the web server but the URL is currently configured on the local IIS web server. To open this project, you must use IIS Manager to remove the bindings using this URL from the local IIS web server."

вводит в заблуждение, поскольку конфликтующие информация не в IIS, но в файле csproj.user.

+0

Чувак, большое спасибо ... Я слишком долго искал эту проблему слишком долго, прежде чем нашел это ... – Rikon

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