首页 > 解决方案 > JSON Schema 的 Swagger UI 更改格式

问题描述

我正在使用 Swagger UI 作为我的 Azure 函数的一部分,并希望更改示例中 JSON 的格式设置方式。

我的模型文件的格式为(TextMessageModel):

public string REG_SND { get; set; }

public string REG_RCV { get; set; }

但在 Swagger UI 中,它显示为:

{
  "reG_SND": "string",
  "reG_RCV": "string",
}

我尝试了无数种选择;太多了,很难说在这个线程中要记下哪个,但是;在我的天蓝色函数中,我将对象序列化为 JSON 并将其打印出来;它看起来很好,例如:

var textMessageJson = JsonConvert.SerializeObject(textMessage);

输出:

{"REG_SND":null,"REG_RCV":"4132-12339-213324-234" }

但是当它到达 Swagger 阶段时,这不是我想要的。

我的函数返回:

return new OkObjectResult(new TextMessageModel());

在我的 Startup.cs 我有:

public override void Configure(IFunctionsHostBuilder builder)
{
...
            // IWebJobsBuilders instance
            var wbBuilder = builder.Services.AddWebJobs(x => { });

            // And now you can use AddExtension
            wbBuilder.AddExtension<BindingExtensionProvider>();

            wbBuilder.AddSwashBuckle(Assembly.GetExecutingAssembly(), options =>
            {

                options.Title = "Title";
                options.Documents = new[]
                {
                    new SwaggerDocument
                    {
                        Description = "Desc",
                        Name = "v1",
                        Title = "Title",
                        Version = "1.0"
                    }
                };
                
            });

我将在何处以及在哪个阶段将默认命名策略定义为可能为 null 以便它遵循我的模型文件的确切格式?

标签: jsonswaggerswagger-uiswashbuckle

解决方案


推荐阅读