Приложение перестает работать после добавления Autofa c Webapi2. Без исключений - PullRequest
0 голосов
/ 11 января 2020

Мы находимся в процессе добавления Dependency Injection в наше приложение, используя Autofa c. Все шло хорошо, пока мы не добавили пакет Autofa c .Webapi2 v4.3.1. Наше веб-приложение включает в себя как стандартные контроллеры MVC, так и контроллеры веб-API, поэтому мы включаем как пакеты Autofa c .Mvc5, так и Autofa c .WebApi2.

Когда мы запускаем приложение, мы не получаем никаких исключений, не можем достичь точки останова и не видим никаких ошибок в средстве просмотра событий.

Браузер просто отображает общее сообщение c:

К сожалению. Мы не можем обработать ваш запрос.

Я обновил код для настройки и регистрации контроллеров и фильтров Web API, но мы видим проблему с изменениями кода и без них.

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

1 Ответ

0 голосов
/ 14 января 2020

Проблема решена. Вопрос Махди Анжама привел меня к нашему приложению, которое перехватывает запросы с короткими ссылками и перенаправляет на правильный URL (то есть https://myapp/54sl3). Он отображает основную ошибку c. html вместо деталей. Как только я выключил пользовательские ошибки, я получил полный ответ об ошибке.

В результате проблема оказалась в том, что пакет autofa c .Webapi2 добавил обработчик в наш Web.Config, но обработчик уже создан (имя обработчика = "ExtensionlessUrlHandler-Integrated-4.0"). Это вызвало дублирование ключа в списке обработчиков. Нет исключений в нашем коде или IIS или просмотра событий. Мне просто нужно было отключить нашу страницу пользовательских ошибок.

...