【问题标题】:Add default values for swashbuckle/swagger on a Web API controller action在 Web API 控制器操作上为 swashbuckle/swagger 添加默认值
【发布时间】:2020-06-16 14:19:57
【问题描述】:

在 C# Web Api 控制器中,如何装饰动作的参数,以便该参数的默认值以 swagger 的形式显示?

【问题讨论】:

  • 谢谢@Rebecca,我见过类似的东西,但它缺少 [AttributeUsage(AttributeTargets.Method, AllowMultiple = true)] ,所以它不能用于多个参数。此示例的唯一问题是它以 swagger 填充参数字段,而不仅仅是在右侧提供示例输入。我以前在.Net 中看到过这个,我从没想过它会这么难实现。 :(
  • 如果你可以使用一个对象作为参数,那么里面的属性可以在那个属性上使用 [DefaultValue("Whatever")]。 IE。 IActionResult 发布(MyRequest 请求)。哪里 class MyRequest { [DefaultValue("Whatever")]public string Message { get;放; } }
  • 每个请求都会有这个默认值。如果我错了,请纠正我?

标签: c# swagger swashbuckle


【解决方案1】:

您可以尝试以下类似的方法,我正在考虑将 Action 方法的输入对象作为产品,因为您在问题中没有明确提及任何内容。

  1. 您可以在请求字段中使用///<example>value </example> 标签。

    公开课产品 { 公共 int ID { 获取;放; }

    ///<summary>
    ///</summary>
    ///<example>example value</example>
    public string Description { get; set; }
    

    }

  2. 2.

对于Action Methods中参数的默认值,可以直接使用如下:

   /// <summary>
   /// Action Method Summary
   /// </summary>
   /// <param name="Description">example value</param>

【讨论】:

  • 使用 web api core 3 尝试了选项 2,但它不起作用
  • 你能分享你的代码吗?会尝试看看有什么问题。
猜你喜欢
  • 2019-06-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-06-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-22
相关资源
最近更新 更多