代码之家  ›  专栏  ›  技术社区  ›  Aidan

具有ActivityTrigger的函数的响应绑定

  •  0
  • Aidan  · 技术社区  · 6 年前

    我想创建一个 Durable Function 调用活动函数,然后在v2函数应用程序中使用dotnetcore返回值。该函数当然会验证其输入,因此可能返回一个成功的值,也可能返回一个无效的错误:HTTP术语中的200或400。我的活动功能如下所示:

    [FunctionName("MyFunc")]
    public static async Task<object> Run(
            [ActivityTrigger] string input,
            ILogger log)
    {
        // return something like
        return new { Status = "OK", Content = content };
    }
    

    我应该为此使用什么返回类型?应该创建我自己的DTO,这将是一个有效的响应,或者是否有方法将HttpResponse对象返回到orchestrator?

    1 回复  |  直到 6 年前
        1
  •  2
  •   Katy Shimizu    6 年前

    我认为这里可能有一个更简单的解决办法。您是否考虑过在验证通过时返回一个简单值,在验证失败时抛出由编排器处理的异常?

    ActivityTrigger绑定处理输入和输出。根据上的文档 error handling

    活动编排器通信不使用HTTP请求和响应;它使用Azure存储表记录历史事件,并使用Azure存储队列分别触发活动以执行异步工作或在某些活动的异步工作完成后唤醒编排器。除非您在业务流程中的某个地方特别需要一个HttpResponse对象,否则不需要将活动的返回值封装在一个对象中。