IIS 尝试浏览目录以查找空路由属性

IIS trying to browse directory for an empty route attribute

我已经创建了一个 api 带有属性路由的控制器:

[RoutePrefix("fonts")]
public class InfoController : ApiController
{
    [Route("")]
    [HttpGet]
    public IHttpActionResult GetSomeInfo()
    {
        return Ok(new { Name = "Some name" });
    }
}

我在项目根目录中有一个名为 "fonts" 的文件夹。

当我尝试请求时:

GET /fonts

IIS 抛出错误:

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

如何解决此问题以调用控制器操作?

更新: 这是 web api 配置 class,这是 VS 创建的默认 web api 配置。

public static class WebApiConfig
    {
        public static void Register(HttpConfiguration config)
        {
            // Web API configuration and services

            // Web API routes
            config.MapHttpAttributeRoutes();

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

这在this page中解决了。

我必须设置:

routes.RouteExistingFiles = true;