Я пишу приложение ASP.NET Core (на полной платформе .NET Framework), которое использует WebListener, а не Kestrel. ¹ Я использую Visual Studio 2015 с Update 3 и ".NET Core 1.0.1 tools Preview 2" (последняя инструментария VS на загружать сайт на момент написания этой статьи).
Поскольку я использую WebListener, и потому что WebListener не совместим с IIS Express, я бы хотел отключить запуск "IIS Express" профиль в Visual Studio, так что, когда мои товарищи по команде откроют это решение, их Visual Studios по умолчанию будет запускать консольное приложение вместо IIS Express, и они смогут просто нажать Run и не получить ошибки.
Но до сих пор я не смог избавить VS от профиля запуска "IIS Express" . Вкладка "Свойства проекта" > "Отладка" позволяет мне редактировать список профилей, но когда я выбираю профиль "IIS Express" , кнопка "Удалить" отключена. Если я сразу же отредактирую файл launchSettings.json и удалю элемент "IIS Express" из "профилей", операция "Файл" > "Сохранить" автоматически добавит профиль "IIS Express" обратно в JSON, который он сохранит на диске!
По-видимому, Microsoft действительно хочет всегда иметь профиль запуска "IIS Express" , хотя он не обязательно совместим со всеми проектами ASP.NET Core. Но стоит спросить: Кто-нибудь нашел способ отключить профиль запуска "IIS Express" в проекте ASP.NET Core и имеет только параметры самостоятельного хоста в профиле запуска селектор?
¹ Для любопытных я использую WebListener, потому что он позволит мне сам-хост в службе Windows и по-прежнему поддерживает аутентификацию NTLM на машине без установки IIS. Kestrel поддерживает только NTLM, когда он размещается в IIS, а не когда он сам размещается.