Swagger/Swashbuckle не работает над проектом Visual Studio 2013 Web API 2

Я пытаюсь установить Swagger через пакет Nuget (Swashbuckle), но не могу заставить его работать.

Это проект vanilla VS 2013 Web Api 2. В консоли JS есть единственная ошибка: Uncaught TypeError: Невозможно прочитать теги свойства null.

На запрос /swagger/ui/lib/underscore-min.map получено 404.

Я нашел ссылку, в которой рекомендовалось отключить BrowserLink с помощью vs:EnableBrowserLink в webconfig, но, похоже, это не дало никакого эффекта.

Любые идеи?


person Michael Brown    schedule 09.03.2015    source источник


Ответы (1)


Я установил Swashbuckle.Core, удостоверился, что создаются выходные данные XML, и с небольшой настройкой все сразу заработало.

    public static void Register(HttpConfiguration config)
    {
        ...
        config
            .EnableSwagger(c =>
            {
                c.SingleApiVersion("v1", "My API Title");
                c.IncludeXmlComments(GetXmlCommentsFileLocation());
            })
            .EnableSwaggerUi();
        ...
    }

    private static string GetXmlCommentsFileLocation()
    {
        var baseDirectory = AppDomain.CurrentDomain.BaseDirectory + "\\bin";
        var commentsFileName = Assembly.GetExecutingAssembly().GetName().Name + ".XML";
        var commentsFileLocation = Path.Combine(baseDirectory, commentsFileName);
        return commentsFileLocation;
    }
person John Thow    schedule 05.11.2015