为什么这个天蓝色的apim政策表达失败了?

时间:2016-02-06 00:14:53

标签: azure azure-api-management

我为Azure APIM编写了一个简单的策略表达式,其中包含一个代码块表达式。这有效:

@ {return“start”+ new Random()。Next()。ToString(); }

然而,这不起作用:

@ {return“start”+ new Random()。Next()。ToString()+“end”}

我尝试了第二个示例的几个变体,但无法让APIM策略管理器接受它。 APIM策略错误返回以下错误:

“第1行第21行元素'log-to-eventhub'中的错误:代码块表达式必须用大括号括起来。”

但是,上面的表达式是用大括号括起来。知道如何在上面的第二个例子中实现我想要做的事情吗?

3 个答案:

答案 0 :(得分:3)

尝试将其重写为(注意末尾的分号):

@ {return“start”+ new Random()。Next()。ToString()+“end”; }

或(没有“返回”):

@ {“start”+ new Random()。Next()。ToString()+“end”}

答案 1 :(得分:1)

您也可以使用单个语句表达式和时髦的新c#6字符串插值

@($"start {new Random().Next().ToString()} end")

答案 2 :(得分:0)

尝试在末尾添加;(分号)。

@{ return "start" + new Random().Next().ToString() + "end"; }