猿问

从持久函数编排器中的私有方法调用活动函数可以吗?

是否可以从 Durable Function Orchestrator 中的私有方法调用活动函数,或者应该避免这样做?这是一个例子:


[FunctionName(nameof(OrchFunc))]

public async Task OrchFunc(

    [OrchestrationTrigger] DurableOrchestrationContext context,

    ILogger logger) {

    var myParameter = context.GetInput<string>();

    // Any issue with doing this with the way checkpoints work?

    var result = await MyPrivateFunc(context, myProperty);

}


private async Task<bool> MyPrivateFunc(

    DurableOrchestrationContext context,

    string myParameter) {

    return result = await context.CallActivityAsync<bool>(nameof(MyActivityFunc), myParameter);

}

请记住,这是一个澄清问题的简单示例。我已经知道它可以直接从编排函数调用,从而跳过私有函数。我并不是想看看它是否有意义,而是只是想了解是否会产生意想不到的副作用。


SMILET
浏览 149回答 1
1回答

回首忆惘然

我想您可能已经摆脱了这个问题,但对于其他寻求此问题的人来说,是的,这应该可以正常工作。将context通过引用传递,因此它仍然是调用活动函数的函数。但请注意,对编排的限制仍然适用于私有方法,因此await除了context.
随时随地看视频慕课网APP
我要回答