具有名称值对数组的星火视图引擎
本文关键字:星火 视图 引擎 数组 有名称 | 更新日期: 2023-09-27 17:56:43
我想使用Spark视图引擎(DirectUse)进行电子邮件模板化。所以我深入研究了Spark示例(EmailOrTextTemplating)。但我想要的是使用视图数据中的 NameValuePair(字符串名称、对象值)对象数组作为字典。
然后在模板中使用它,如下所示:
<p>Name = ${#namevaluepairs["name"]}</p>
或
<if condition='namevaluepairs["date"].ToString("dd-MM-yyyy") == "31-01-2013"'>
<p>text</p>
</if>
我不知道正确的语法是什么,也不知道如何将名称值对放在视图数据中。谁能帮助我朝着正确的方向前进?
Ps 我阅读了文档,但我看到了使用 Spark 引擎语法的不同方法。
ViewData 对象是一个字典。
只需在调用 Spark 之前将对象加载到 ViewData 中即可:
var engine = new SparkViewEngine();
var descriptor = new SparkViewDescriptor()
.AddTemplate( templateFileName );
ISparkEngineView view = engine.CreateInstance( descriptor ) as ISparkEngineView;
view.ViewData["name"] = "foo";
view.ViewData["date"] = DateTime.Now;
view.RenderView( writer );
然后在模板中使用视图数据,就像您通常一样:
${ViewData["name"]}
<if condition='ViewData["date"]...'></if>