Размещение и отладка веб-API ASP.NET Core 2.0 IIS

У меня есть веб-API ASP.NET Core 2 с приложением SPA переднего плана Angular 4. Он был создан с использованием чистого шаблона веб-API Core 2 в VS2017 и angular-cli для интерфейса с использованием VSCode. В настоящее время я могу успешно запустить свой прототип с помощью IIS Express WebAPI или самостоятельно. Я могу успешно выполнить развертывание в IIS, выполнив шаги, подобные этим: https://docs.microsoft.com/en-us/aspnet/core/publishing/iis?tabs=aspnetcore2x. Однако я не могу понять, как подключиться к процессу IIS, чтобы иметь возможность пошагово выполнять код, как я делал это с обычным старым веб-API или приложением MVC, размещенным в IIS.

Я исхожу из традиционного веб-API и среды Angular1. Оба конца были развернуты в IIS, и это был простой процесс для подключения к IIS для устранения неполадок. Так что, возможно, это глупый вопрос, но я не могу найти хороший ресурс о том, как подойти к производственному развертыванию такого приложения Core 2 WebAPI + Angular 2 SPA. Какие лучшие практики? IIS для веб-API и npm для клиента? Может ли кто-нибудь указать мне на учебник о том, как это сделать и как отлаживать / устранять неполадки с IIS? Есть ли лучшие способы развернуть / разместить его, возможно, мой подход неправильный и IIS не нужен?

Если понадобятся картинки, код, настройка, я с радостью добавлю это в вопрос. Я просто не знаю, что я могу предложить на данный момент. Любая помощь, совет, ссылка будет очень признательна!


person lentyai    schedule 06.10.2017    source источник
comment
Вы знаете, что такое 500 server error? Проверьте свою консоль.   -  person penleychan    schedule 06.10.2017
comment
Не удалось загрузить ресурс. Дело в том, что я не могу подключиться даже к простому API, который работает нормально. Как, черт возьми, я могу это устранить?   -  person lentyai    schedule 06.10.2017
comment
Я предполагаю, что на вашей локальной машине разработки вы использовали ng-serve для angular? Это работает, потому что он размещен с использованием node. Вам не хватает web.config для вашего angular, размещенного в IIS (стратегия перезаписи URL).   -  person penleychan    schedule 06.10.2017
comment
Спасибо за такой быстрый ответ! - Да, я обслуживаю клиента. Но я сейчас даже не говорю о клиенте. Меня больше беспокоит веб-api. Естественно, у меня нет web.config, но он создается, когда я публикую его (в каталог wwwroot, но действительно можно использовать все, что угодно). И, как я уже упоминал, простой API Values ​​из шаблона VS2017 работает нормально.   -  person lentyai    schedule 06.10.2017
comment
Кроме того, когда я попытался просто добавить конфигурацию в свой проект WebApi, это вообще не сработало.   -  person lentyai    schedule 06.10.2017
comment
Вы можете попробовать использовать Postman. Я использую его как надстройку в хроме. Отправьте GET на свой веб-адрес. Обычно он предоставляет более удобный отчет об ошибках.   -  person tmwoods    schedule 07.10.2017
comment
@Lex - Это именно то, что я пытаюсь выяснить - как устранить эту 500. Конкретно - как прикрепить отладчик. Я просто не знаю, что показать - код, настройки, настройки IIS? Я уже выяснил свою проблему с установкой, которая вызвала 500, однако мой главный вопрос остается - как прикрепить / отладить код во время размещения IIS.   -  person lentyai    schedule 10.10.2017
comment
@Lex - 500 исправлено. Вопрос об отладке при размещении в IIS   -  person lentyai    schedule 11.10.2017


Ответы (1)


Не уверен на 100%, что это именно то, что вам нужно, но посмотрите это сообщение в блоге: https://blogs.msdn.microsoft.com/webdev/2017/07/13/development-time-iis-support-for-asp-net-core-applications/

Примечание. Перед началом сеанса отладки убедитесь, что вы выбрали новый профиль запуска («IIS») в главном окне!

person YonZo    schedule 23.10.2017
comment
У меня сработала установка поддержки IIS во время разработки. - person WernerCD; 15.03.2019