gpt4 book ai didi

c# - 如何为类生成 JSON 示例值,就像 Swagger 所做的示例响应一样?

转载 作者:行者123 更新时间:2023-12-04 13:55:31 24 4
gpt4 key购买 nike

我将 Swagger 与我的 ASP.NET Core 应用程序和 HTTP POST 端点一起使用,返回 Blog模型:

[HttpPost]
[ProducesResponseType(typeof(Blog), StatusCodes.Status200OK)]
public IActionResult AddBlog([FromBody] string name)
{
// Code removed for brevity...
return Ok(newBlog);
}
博客:
public Blog
{
public int Id { get; set; }

public string Name { get; set; }
}
Swagger 在其 UI 中将显示该端点的示例响应:
{
"Id": 0,
"Name": "string"
}
我想要做的是在 JSON 中为我提供的类类型以及我需要它的位置生成这样的示例值,这在我的应用程序中的其他地方,例如:
var json = exampleValuesGenerator.Generate(typeof(Blog));
这可能吗?

最佳答案

是的,可以为响应和 POST 请求生成这样的示例值。对于 Get 请求,这很困难,请在此处查看我的问题:SwashBuckle Swagger-UI Example Request for HTTP GET Method with FromQuery Attribute
查看 NuGet 包 Swashbuckle.AspNetCore.Filters :
您可以定义一个示例响应,例如:

public class BlogExample : IExamplesProvider<Blog>
{
public Blog GetExamples()
{
return new Blog()
{
Id = 123,
Name = "John Smith"
};
}
}
SwaggerUI 然后将显示这些值而不是空的默认值。

关于c# - 如何为类生成 JSON 示例值,就像 Swagger 所做的示例响应一样?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63191747/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com