Подтвердить что ты не робот

Ошибка HTTP 404 при вызове локального веб-сервиса в .NET MVC4

Я пытаюсь изучить веб-службы в .NET mvc4. Я попытался создать новое интернет-приложение и добавить в проект веб-службу (asmx).

По умолчанию VS добавляет веб-сервис HelloWorld. Когда я пытаюсь запустить его в браузере, я получаю список операций, описание сервиса (WSDL) и подробности операции HellowWorld. Однако, когда я пытаюсь вызвать веб-сервис, он дает следующую ошибку:

Ошибка сервера в приложении "/".

Ресурс не найден.

Описание: HTTP 404. Ресурс, который вы ищете (или один из его зависимостей) могли быть удалены, если бы их имя было изменено, или Временно недоступен. Просмотрите следующий URL-адрес и сделайте убедитесь, что оно написано правильно.

Возможно, мне не хватает базового шага/настройки. Может ли помочь какой-то орган. Спасибо.

4b9b3361

Ответ 1

Я получил ответ от одного из моих коллег:).

Когда мы вызываем службу, MVC пытается разрешить путь, как указано в RegisterRoutes. Поэтому он пытается найти контроллер с этим именем и метод с таким же именем, как и с операцией внутри этого контроллера. Разрешение, игнорировать пути с расширением .asmx. Вы можете сделать это, добавив следующую строку в RouteConfig.cs:

routes.IgnoreRoute("{*x}", new { x = @".*\.asmx(/.*)?" }); 

и это сработало. Спасибо.