如何摆脱 Evaluate with Object 函数调用

CFM*_*per 4 coldfusion coldfusion-2016

我在运行时通过对象调用函数。在这种特定情况下,函数名称是在运行时通过另一个页面的逻辑提供的(该函数存在于 cfc 中)。目前我们使用 Evaluate 并且非常慢。有什么办法可以摆脱这个吗?我知道我可以将 [] 与结构一起使用,但在这里我迷路了。qryData 是我传递给函数的查询对象。

<cfset someData = Evaluate("objTicket.#arrayItem[ItemID].FunctionName#(qryData)")>
<!---this is how it would look like--->
<cfset someData = objTicket.getTickets(qryData)>
Run Code Online (Sandbox Code Playgroud)

RRK*_*RRK 7

这能帮您解决吗?

<cfset someData = objTicket[arrayItem[ItemID].FunctionName](qryData)>
Run Code Online (Sandbox Code Playgroud)