swagger.json не обновляется в соответствии с изменениями кода при развертывании

У меня проблема с пользовательским интерфейсом Swagger (или конкретно с файлом swagger.json), который не обновляется, когда я развертываю свой код на сервере. Если я перейду на страницу пользовательского интерфейса Swagger, сервер предоставит мне старую версию документации.

Все работает локально, поэтому проблема должна быть связана с процессом развертывания или IIS.

Любые идеи о том, что может вызвать это, и как я могу это исправить?

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

  • Удален файл XML-комментариев, сгенерированный Web API, и создан заново.
  • Перезапустил сайт IIS на сервере
  • Удалил все файлы на сайте и заново развернул
  • Многочисленные передислокации

(используя Swashbuckle для .NET Framework, а не .NET Core)


person msk    schedule 11.08.2017    source источник
comment
Попробуйте изменить имя файла Swagger json, выполните перестройку и проверьте, обновлено ли значение, это даст вам лучшее представление о том, что может быть не так.   -  person Utkarsh Bais    schedule 11.08.2017
comment
где я могу это сделать? Похоже, что файл создается во время выполнения и не может найти его нигде в SwaggerConfig.cs.   -  person msk    schedule 11.08.2017
comment
В Visual Studio перейдите в «Свойства проекта» и на вкладке «Сборка» под заголовком «Вывод» у вас будет файл документации XML, который должен быть вашим файлом. В случае JSON, я думаю, это поможет вам github.com/aspnet/Docs/blob/master/aspnetcore/tutorials/   -  person Utkarsh Bais    schedule 11.08.2017
comment
Это очень странно... (Swashbuckle для .NET Framework, не .NET Core) не имеет файла swagger.json, вот мой: swashbuckletest.azurewebsites.net/swagger/ui/index   -  person Helder Sepulveda    schedule 11.08.2017


Ответы (2)


Возможно, вам потребуется очистить кеш вашего браузера. Я только что столкнулся с этой проблемой и решил ее, очистив кеш браузера.

person Wagner    schedule 21.01.2020

В моем случае атрибут set был как приватный, после этого без проблем обновил чванство.

До: public string Street { get; частный набор; }

После: public string Street { get; набор; }

Надеюсь, это поможет =)

person Milton Quirino    schedule 15.04.2021