问题描述
我有一堆使用http触发器的Azure函数。我一直在对http方法进行硬编码,例如以下情况:
[FunctionName("HttpTriggerCSharp")]
public static async Task<IActionResult> Run(
[HttpTrigger(AuthorizationLevel.Function,"get","post",Route = null)]
HttpRequest req,ILogger log)
理想情况下,我想使用强类型值,而不要使用诸如get
和post
这样的硬编码字符串。我尝试使用HttpMethod
枚举值,但出现以下错误:
属性参数必须是常量表达式typeof 参数类型的表达式或数组创建表达式
使用C#,在声明函数方法签名时是否可以利用强类型的http方法?
解决方法
nameof(HttpMethod.Get)
应该可以工作。