Я следовал нескольким учебникам, включая этот по добавлению Swagger через Swashbuckle.
Из разных постов я изменил следующее при запуске ..
//GlobalConfiguration.Configuration
// .EnableSwagger(c => c.SingleApiVersion("v1", "A title for your API"))
// .EnableSwaggerUi();
HttpConfiguration httpConfig = new HttpConfiguration();
SwaggerConfig.Register(httpConfig);
WebApiConfig.Register(httpConfig, unityContainer);
app.UseWebApi(httpConfig);
И в моем SwaggerConfig.cs у меня есть ...
//[assembly: PreApplicationStartMethod(typeof(SwaggerConfig), "Register")]
namespace Micromine.MyApp
{
public class SwaggerConfig
{
public static void Register(HttpConfiguration httpConfig)
{
httpConfig
.EnableSwagger(c =>
{
c.RootUrl(req => SwaggerDocsConfig.DefaultRootUrlResolver(req));
c.SingleApiVersion("v1", "MyCompany.MyApp");
c.IncludeXmlComments(string.Format(@"{0}\bin\myapp.xml", System.AppDomain.CurrentDomain.BaseDirectory));
})
.EnableSwaggerUi(c =>
{
});
}
Проблема 1.
Когда я запускаю свое приложение, у меня есть следующеекорневой маршрут ...
http://localhost/myapp/
Теперь, если я попытаюсь перейти к чванству, т.е. введите
http://localhost/myapp/swagger
, он перенаправляет на http://localhost/swagger/ui/index
, т.е.не имеет myapp
в пути.
Проблема 2
Если я теперь вручную перейду к http://localhost/myapp/swagger/ui/index
, я получу ..
Наконец, если я вручную введу следующее ...
мои маршрутыобъявиться.
Есть идеи, как мне это настроить?