Не удается опубликовать веб-API ASP.NET в службе приложений Azure.

avatar
Brian Baldner
9 августа 2021 в 00:24
415
2
0

Я получаю эту ошибку, когда пытаюсь опубликовать свой веб-API ASP.NET в службе приложений Azure.

Ошибка публикации. Убедитесь, что Startup.cs для вашего приложения вызывает AddSwaggerGen из ConfigureServices для создания файла swagger. Посетите https://go.microsoft.com/fwlink/?LinkId=2131205&CLCID=0x409 для получения дополнительной информации.

Я не могу понять проблему. Мне все кажется хорошим.

Функция ConfigurationServices:

public void ConfigureServices(IServiceCollection services)
        {
            services.AddDbContext<StatsVal_APIContext>(options =>
                    options.UseSqlServer(Configuration.GetConnectionString("StatsVal_APIContext")));
            services.AddControllers();
            services.AddSwaggerGen(c =>
            {
                c.SwaggerDoc("v1", new OpenApiInfo { Title = "StatsVal_API", Version = "v1" });
            });
            services.AddCors(opt =>
            {
                opt.AddPolicy(name: _policyName, builder =>
                {
                    builder.AllowAnyOrigin()
                        .AllowAnyHeader()
                        .AllowAnyMethod();
                });
            });
        }

Спасибо за помощь!

Источник
Rimaz Mohommed
9 августа 2021 в 01:53
0

Вы также добавили app.UseSwagger(); и т.д. в свой метод Startup.Configure, как указано здесь: docs.microsoft.com/en-us/aspnet/core/tutorials/…

Brian Baldner
9 августа 2021 в 02:37
0

Ага, это уже было.

Rimaz Mohommed
9 августа 2021 в 03:22
0

Можете ли вы добавить полный код для своего класса Startup, команду сборки Azure, которую вы используете в своем конвейере, и снимок экрана с ошибкой в ​​конвейерах azure (при условии, что вы используете конвейеры azure для сборки и публикации приложения API)

Ответы (2)

avatar
Brian Baldner
9 августа 2021 в 18:24
1

Я обнаружил, что проблема как-то связана с профилем публикации. Я сделал новый и он работает. Спасибо за помощь.

avatar
Sajeetharan
9 августа 2021 в 04:01
1

Попробуйте использовать последнюю версию Swashbuckle.AspNetCore. Вот официальный обходной путь
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/issues/2006

Добавьте файл global.json в свой проект веб-API

Вставьте сюда:

{ "sdk": { "version": "3.1.406", "rollForward": "latestPatch" } }
Brian Baldner
9 августа 2021 в 15:50
0

Это не сработало, и я запускаю его в сети 5.