gpt4 book ai didi

azure - 将字符串参数绑定(bind)到 Azure Function 中的 Enum 类型

转载 作者:行者123 更新时间:2023-12-02 01:12:47 27 4
gpt4 key购买 nike

我正在尝试将字符串路由参数绑定(bind)到枚举类型,如下所示

public static async Task<HttpResponseMessage> Run([HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = "ValidateKey/{keyType}/{key}")]HttpRequestMessage req, KeyType keyType, string key, TraceWriter log)

当我到达端点时,代码给出了以下异常。

Exception binding parameter 'req' -> Invalid cast from 'System.String' to 'MyCommon.KeyType'."

模型绑定(bind)器无法将字符串参数绑定(bind)到枚举类型。在 MVC 或 WebAPI 应用程序中,绑定(bind)到 Enum 工作正常,但 AzureFunction 似乎不支持该绑定(bind)。无论如何,是否可以在 AzureFunction 中插入自定义 ModelBinder 以使其正常工作?

最佳答案

绑定(bind)过程有点不同,我们目前没有公开插入自定义绑定(bind)器的机制。

我打开此问题是为了解决特定问题,我们目前不支持绑定(bind)到枚举:https://github.com/Azure/azure-webjobs-sdk-script/issues/1564

与此同时,有一些解决方法,但最直接的方法是绑定(bind)到字符串并将该参数解析为枚举作为函数的一部分。并不理想,但只是一个简单的衬里:

Enum.TryParse(keyTypeValue, out KeyType keyType);

关于azure - 将字符串参数绑定(bind)到 Azure Function 中的 Enum 类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44318855/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com