持久函数$return绑定中的持久实体返回了一个非none值

2024-09-28 12:12:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图在Python中使用持久函数,并且希望将状态存储在持久实体中。关于如何使用持久实体的文档很少,尤其是在Python中。我甚至试过读一些C代码,但没有多大帮助。它们提供的唯一示例是一个简单的“Counter”函数,它是从客户机函数调用的,但我想从Orchestrator函数调用它。我能找到的唯一文档如下:

https://docs.microsoft.com/en-us/azure/azure-functions/durable/durable-functions-entities?tabs=python

这本指南说我可以通过orchestrator完成,下面是他们提供的示例:

def orchestrator_function(context: df.DurableOrchestrationContext):
    entityId = df.EntityId("Counter", "myCounter")
    current_value = yield context.call_entity(entityId, "get")
    if current_value < 10:
       context.signal_entity(entityId, "add", 1)
    return state

因此,遵循该文档会产生以下错误:

Exception: RuntimeError: function 'DurableFunctionsEntityPy' without a $return binding returned a non-None value

我曾尝试在function.json中为实体函数使用各种输出,但都不起作用。大多数时候,我都会收到一个错误,上面写着:

@durablefunctionsentitypy@myCounter: Function 'durablefunctionsentitypy (Entity)' failed with an error. Reason: Internal error: System.ArgumentNullException: Value cannot be null. (Parameter 'name')

这里需要什么

我对代码中的“返回状态”部分也很困惑?“国家”的定义在哪里?他们好像把它扔进去了,却没有让别人知道。我希望微软花更多的时间来阅读这些指南,这样它们才有意义

请帮帮我,我在拔头发


Tags: 函数代码文档实体示例value状态context

热门问题