маршрут не распознан iis

Я пытаюсь использовать маршрутизацию на основе атрибутов в Web Api 2. Поэтому я добавил это:

public class PropertyApiController : ApiController
{
    [Route("properties")]
    public IEnumerable<Property> GetAll()
    {
        // return properties
    }
}

У меня также есть это в WebApiConfig:

config.MapHttpAttributeRoutes();

config.Routes.MapHttpRoute(
            name: "DefaultApi",
            routeTemplate: "api/{controller}/{id}",
            defaults: new { id = RouteParameter.Optional }
        );

Насколько я понимаю, это должно работать, когда я набираю что-то вроде:

http://localhost:3648/properties/

(http://localhost:3648 – экспресс-URL-адрес IIS, указанный в свойствах проекта.)

Но когда я пытаюсь это сделать, я получаю сообщение об ошибке:

HTTP Error 403.14 - Forbidden
The Web server is configured to not list the contents of this directory.

В то время как я ожидал какой-то json. Есть идеи?


person OJ Raqueño    schedule 24.11.2013    source источник
comment
Вы пытались добавить ‹system.webServer› ‹directoryBrowse enabled="true" /› ‹/system.webServer› в web.config? Проверьте этот вопрос stackoverflow.com/questions/15816924/   -  person Spock    schedule 25.11.2013
comment
Спасибо, Спок. На самом деле я решил использовать шаблон и удалить/изменить некоторые элементы вместо того, чтобы просто начинать с нуля. В любом случае проголосовал.   -  person OJ Raqueño    schedule 29.11.2013