当我在子文件夹上部署时出现 Swashbuckle root 错误

Swashbuckle root error when i deploy on subfolder

我从 Swashbuckle 开始,我用 Swashbuckle 在 .NET Core 中制作了一个 Web API。 我需要在 IIS 站点

的子应用程序中部署我的 API

IIS 基础结构

我希望通过此 url :

访问 swagger UI
http://ip:80/myApi/swagger

我希望通过此方法访问方法 url :

http://ip:80/myApi/api/[controller]/methode

配置服务(IServiceCollection 服务)

 services.AddSwaggerGen(c =>
        {
            c.SwaggerDoc("v1", new Swashbuckle.AspNetCore.Swagger.Info { Title = "My REST API", Version = "v1" });
        });

配置(IApplicationBuilder 应用..)

if (env.IsEnvironment("ProdIT"))
        {
            app.UseSwagger(c =>
            {

                c.PreSerializeFilters.Add((swaggerDoc, httpReq) => swaggerDoc.BasePath = "/myApi/");
                c.RouteTemplate = "myApi/api-docs/{documentName}/swagger.json";
            });
            app.UseSwaggerUI(c =>
            {
                c.RoutePrefix = "myApi/swagger";
                c.SwaggerEndpoint("/myApi/api-docs/v1/swagger.json", "MY REST API V1");});

路由控制器

[Route("api/[controller]")]

你能告诉我我的代码有什么问题吗?

提前致谢

我遇到了同样的问题,我通过像这样配置 SwaggerUI 解决了它;

app.UseSwaggerUI(c =>
{
     c.SwaggerEndpoint("v1/swagger.json", "MY REST API V1");});
}