在 运行 时间执行存储的函数
Execute stored functions at run-time
我正在尝试从 table 中检索存储的函数并让它们在 运行 时执行。
Ex MyTableFieldValue 包含:
$PARAMETER(MyClass,MyParameterName)
其中 MyTableFieldValue 是 table 中名为 MyTable 的字段值。
class MyClass 中的 MyParameterName 值实际上是 "ThisParameter"
我想这样做:
Set parameterName = MyTableFieldValue
其中 parameterName 应包含 "ThisParameter".
而是包含
$PARAMETER(MyClass,MyParameterName).
如何强制缓存实际评估 MyTableFieldValue 中的内容?
如果您的 table 中的数据不是 user-editable,您可以按照文档
中的描述使用间接计算您的值
在您的示例中,它看起来像
Set @("parameterName = "_MyTableFieldValue)
但是,如果用户可以更改您 table 中的数据,这是不安全的,因为他们可以通过这种方式执行几乎所有代码。在这种情况下,您应该解析字符串,找到您的 class 名称和参数名称,并显式调用 运行 $parameter 函数。
我正在尝试从 table 中检索存储的函数并让它们在 运行 时执行。 Ex MyTableFieldValue 包含:
$PARAMETER(MyClass,MyParameterName)
其中 MyTableFieldValue 是 table 中名为 MyTable 的字段值。 class MyClass 中的 MyParameterName 值实际上是 "ThisParameter"
我想这样做:
Set parameterName = MyTableFieldValue
其中 parameterName 应包含 "ThisParameter".
而是包含
$PARAMETER(MyClass,MyParameterName).
如何强制缓存实际评估 MyTableFieldValue 中的内容?
如果您的 table 中的数据不是 user-editable,您可以按照文档
中的描述使用间接计算您的值在您的示例中,它看起来像
Set @("parameterName = "_MyTableFieldValue)
但是,如果用户可以更改您 table 中的数据,这是不安全的,因为他们可以通过这种方式执行几乎所有代码。在这种情况下,您应该解析字符串,找到您的 class 名称和参数名称,并显式调用 运行 $parameter 函数。