这是一个关于 Liquid 安全性的问题,与 DotLiquid 库有关。
假设我的视图模型如下所示(伪代码):
class MyViewModel
public string MyField
public string MyMethod()
...并且 MyViewModel 对象被传递给 Liquid 模板,其中 MyField 设置为可从模板内访问(因此模板可以读取其内容)。
- 可以将 MyField 分配给吗?即模板可以修改视图模型的内容吗?
- 可以调用 MyMethod() 吗?在渲染模板时,没有将“MyMethod”成员配置为可从模板访问。
- 如果“MyMethod”成员在渲染模板时被配置为可访问会发生什么?是否可以从 Liquid 模板调用方法?
我的假设是所有问题的答案都是否定的,但我想确定一下。
谢谢你。