我为Azure APIM编写了一个简单的策略表达式,其中包含一个代码块表达式。这有效:
@ {return“start”+ new Random()。Next()。ToString(); }
然而,这不起作用:
@ {return“start”+ new Random()。Next()。ToString()+“end”}
我尝试了第二个示例的几个变体,但无法让APIM策略管理器接受它。 APIM策略错误返回以下错误:
“第1行第21行元素'log-to-eventhub'中的错误:代码块表达式必须用大括号括起来。”
但是,上面的表达式是用大括号括起来。知道如何在上面的第二个例子中实现我想要做的事情吗?
答案 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"; }