Да, это очень легко сделать с помощью Durable Functions:
1 - установить пакет nuget для Microsoft. Azure .WebJobs.Extensions.DurableTask;
2-
[FunctionName("Function1")]
public static async Task<IActionResult> Run(
[HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequest req,
[DurableClient] IDurableOrchestrationClient starter,
ILogger log)
{
Guid instanceId = Guid.NewGuid();
string x = await starter.StartNewAsync("Processor", instanceId.ToString(), null);
log.LogInformation($"Started orchestration with ID = '{instanceId}'.");
return starter.CreateCheckStatusResponse(req, x);
}
3-
[FunctionName("Processor")]
public static async Task<string> Search([OrchestrationTrigger] IDurableOrchestrationContext context)
{
var output= await context.CallActivityAsync<string>("DoSomething", null);
return output;
}
[FunctionName("DoSomething")]
public static async Task<string> Execute([ActivityTrigger] string termo, ILogger log)
{
//do your work in here
}
В предыдущем коде мы создали функцию Orchestrator (Processor) и запустили действие, которое будет выполнять функцию DoSomething процесса.
Подробнее: https://docs.microsoft.com/en-us/azure/azure-functions/durable/durable-functions-overview