Kesalahan parameter string ASP.NET Web Api Swagger - tidak ada deskripsi

Saya menggunakan Swagger UI untuk menguji aplikasi ASP.NET Web Api saya. Saya menambahkan kelas untuk mengizinkan parameter operasi

public void Apply(OpenApiOperation operation, OperationFilterContext context)
{
    if (operation.Parameters == null) 
        operation.Parameters = new List<OpenApiParameter>();

    operation.Parameters.Add(new OpenApiParameter
    {
        Name = "ApiKey",
        In = ParameterLocation.Header,
        Required = true,
        Schema = new OpenApiSchema
        {
            Type = "String"
        }
    });
    operation.Parameters.Add(new OpenApiParameter
    {
        Name = "Authentication",
        In = ParameterLocation.Header,
        Required = false,
        Schema = new OpenApiSchema
        {
            Type = "String"
        }
    });
}

Di Startup.cs saya, saya menambahkan baris ini ke metode ConfigurationServices

c.OperationFilter<CustomHeaderSwaggerAttribute>();

Saat saya mencoba dan menguji salah satu metode pengontrol, parameter string ApiKey saya selalu menampilkan kesalahan apa pun yang saya masukkan ke dalam kotak teks.

masukkan deskripsi gambar di sini


person Ryan    schedule 12.01.2021    source sumber
comment
Ini mungkin bukan jawabannya tetapi akan segera diuji. Sudahkah Anda mencoba: Type = "string" dengan huruf S kecil?   -  person SBFrancies    schedule 12.01.2021
comment
@SBFrancies membuat dan menjawab untuk saya tandai. Mengubah String menjadi string berhasil!   -  person Ryan    schedule 12.01.2021


Jawaban (1)


Saya tidak yakin tentang properti Schema tetapi yang berikut ini berhasil untuk saya di masa lalu (mengatur type ke string):

operation.Parameters.Add(new Parameter
        {
            name = "ApiKey",
            @in = ParameterLocation.Header,
            required = true,
            type = "string"                
        });

Untuk detail lebih lanjut, lihat postingan ini

person Ehsan Sajjad    schedule 12.01.2021