В настоящее время мы пытаемся начать работу с услугами WebApi для переключения наших продуктов с традиционных сервисов WCF SOAP. Задача, которую мы получили, - предоставить документацию api. Я наткнулся на пряжку SwaggerUi/swash. У нас есть одно ограничение: мы не хотим размещать службы WebApi в IIS, но в службе Windows. Я новичок в Web Api, поэтому я могу делать что-то не так.Документация Web Api с swashbuckle
Так что для тестирования я размещаю веб-api в консольном приложении. Я могу использовать HttpClient для вызова метода Get в Web Api, но я не могу получить доступ к тому же, если я набираю url в веб-браузере (это нормально для самостоятельной веб-api?).
Итак, я установил пакет Swashbuckle.core nuget и включил следующий код в класс запуска (Ohost selfhoted).
var config = new HttpConfiguration();
config
.EnableSwagger(c =>
{
c.IncludeXmlComments(GetXmlCommentsPath());
c.SingleApiVersion("v1", "WebApi");
c.ResolveConflictingActions(x => x.First());
})
.EnableSwaggerUi();
private static string GetXmlCommentsPath()
{
var path = [email protected]"{AppDomain.CurrentDomain.BaseDirectory}\WebApiHost.XML";
return path;
}
Когда я просматриваю к следующему адресу http://localhost:5000/swagger/ui/index я получаю «Страница не может быть отображена» в IE. Похоже для хром. Есть ли что-нибудь особенное, что нужно сделать при размещении WebApi в приложении для консоли/Windows, чтобы получить документацию автоматически?
(Я включил Xml документации по проекту)
Я теперь прилагается тестовый проект. Пожалуйста, перейдите по ссылке ниже:
С уважением,
Nas
Большое спасибо за указание на то, что я не могу поверить, что не обращал внимания на что-то такое основное. Он работает сейчас :) – Nasir