Arhn - архитектура программирования

Сортировка по имени контроллера или тегу с помощью NSwag и C #

У меня есть решение ASP.Net Core, для которого я хочу использовать Swagger. Для этого я использую пакет Nuget NSwag (сборка NSwag.AspNetCore, Version = 11.20.1.0). В моей конфигурации приложения у меня есть следующее:

public void Configure(IApplicationBuilder app) {
    app..UseSwaggerUi3WithApiExplorer(settings =>
        {
            settings.GeneratorSettings.DefaultPropertyNameHandling = PropertyNameHandling.CamelCase;
            settings.PostProcess = document =>
            {
                document.Info.Version = $"v{typeof(Startup).Assembly.GetName().Version.Major}";
                document.Info.Title = "Test Api";
                document.Info.Description = "Sample API";
                document.Info.TermsOfService = "None";
                document.Info.Contact = new NSwag.SwaggerContact
                {
                    Name = "Person",
                    Email = "Email"
                };
            };
        });
}

Когда я запускаю это, я правильно вижу все контроллеры и соответствующие методы, но они не отсортированы по алфавиту.

Я уже пробовал следующее:

  • Добавьте TagSorter в настройки:

    app.UseSwaggerUi3WithApiExplorer(settings =>
        {
            ...
            settings.TagSorter = "alpha";
            ...
        });
    
  • Добавьте ApisSorter в настройки:

    app.UseSwaggerUi3WithApiExplorer(settings =>
        {
            ...
            settings.ApisSorter = "alpha";
            ...
        });
    

Но эти изменения приводят к тому же результату. Как мне добиться сортировки?

07.12.2018

Ответы:


1

Я была такая же проблема. Но после обновления NSwag.AspNetCore -> 12.0.8 (последняя версия на момент написания) и замены методов, которые сейчас Obsolete, он работал с

s.TagsSorter = "alpha";
s.OperationsSorter = "alpha";
20.12.2018
  • Когда я обновляюсь, я получаю сообщение об ошибке при запуске моего проекта, что я не могу использовать UseSwaggerUi3WithApiExplorer (), но вместо этого использую UseSwaggerUi3 (), и когда я затем перехожу на свою страницу Swagger, я получаю сообщение об ошибке: Не удалось загрузить определение API. 20.12.2018
  • Хм использую app.UseSwaggerUi3WithApiExplorer(...). UseSwaggerUi3 помечен как устаревший с комментарием UseSwaggerUi3WithApiExplorer вместо этого. EDIT: неважно, была одна перегрузка UseSwaggerUi3, которая не была отмечена как устаревшая 08.01.2019
  • Новые материалы

    Коллекции публикаций по глубокому обучению
    Последние пару месяцев я создавал коллекции последних академических публикаций по различным подполям глубокого обучения в моем блоге https://amundtveit.com - эта публикация дает обзор 25..

    Представляем: Pepita
    Фреймворк JavaScript с открытым исходным кодом Я знаю, что недостатка в фреймворках JavaScript нет. Но я просто не мог остановиться. Я хотел написать что-то сам, со своими собственными..

    Советы по коду Laravel #2
    1-) Найти // You can specify the columns you need // in when you use the find method on a model User::find(‘id’, [‘email’,’name’]); // You can increment or decrement // a field in..

    Работа с временными рядами спутниковых изображений, часть 3 (аналитика данных)
    Анализ временных рядов спутниковых изображений для данных наблюдений за большой Землей (arXiv) Автор: Рольф Симоэс , Жильберто Камара , Жильберто Кейрос , Фелипе Соуза , Педро Р. Андраде ,..

    3 способа решить квадратное уравнение (3-й мой любимый) -
    1. Методом факторизации — 2. Используя квадратичную формулу — 3. Заполнив квадрат — Давайте поймем это, решив это простое уравнение: Мы пытаемся сделать LHS,..

    Создание VR-миров с A-Frame
    Виртуальная реальность (и дополненная реальность) стали главными модными терминами в образовательных технологиях. С недорогими VR-гарнитурами, такими как Google Cardboard , и использованием..

    Демистификация рекурсии
    КОДЕКС Демистификация рекурсии Упрощенная концепция ошеломляющей О чем весь этот шум? Рекурсия, кажется, единственная тема, от которой у каждого начинающего студента-информатика..