代码之家  ›  专栏  ›  技术社区  ›  jlo-gmail

Swashback-如何在模式部分中包括参数类型

  •  0
  • jlo-gmail  · 技术社区  · 4 年前

    我有一个使用Swashback的Azure Function应用程序。

    [FunctionName("DoWorkV2")]
    [QueryStringParameter("DoWorkParameters", "", DataType = typeof(DoWorkParametersV2), Required = true)]
    [ProducesResponseType(typeof(DoWorkResults), (int)HttpStatusCode.OK)]
    public static async Task<IActionResult> DoWorkV2(
        [HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequest req,
        ILogger log, ExecutionContext context)
    {
    

    由QueryStringParameter属性定义的参数不包括在架构部分中。

    如何使参数出现在模式部分中,以便我的消费者可以知道要传递哪种类型的参数?

    0 回复  |  直到 4 年前
        1
  •  1
  •   jlo-gmail    4 年前

    最后,我使用ProducesResponseType为QueryStringParameter中包含的类型创建了虚拟方法。现在我有两个额外的方法什么都不做。看起来有点黑,但类型现在出现在Swagger页面的schema部分。

    [FunctionName("DoWorkParametersV2Factory")]
    [ProducesResponseType(typeof(DoWorkParametersV2), (int)HttpStatusCode.OK)]
    public static async Task<IActionResult> DoWorkParametersV2Factory(
        [HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequest req,
        ILogger log, ExecutionContext context)
    {