我正在尝试使用Nustache,以便可以在 ASP.Net Web 应用程序中的后端和前端代码之间共享渲染模板。当我只是将一个对象传递给模板时它工作正常,但我不知道如何让它呈现一个集合。因此,如果我有这样的模板:
{{#RenderItems}}
<th data-warning="{{WarningLevel}}" data-limit="{{LimitLevel}}">{{TotalHours}}</th>
{{/RenderItems}}
然后我想传入一组对象并取出一组th
元素。
我尝试过的事情:
- 创建一个具有属性的类
WarningLevel
,LimitLevel
和TotalHours
,将对象添加到 aList
并直接传递它:Nustache.Core.Render.FileToString(System.Web.HttpContext.Current.Server.MapPath("my.template"), ListOfObjects)
- 做同样的事情,除了创建一个匿名类:
Nustache.Core.Render.FileToString(System.Web.HttpContext.Current.Server.MapPath("my.template"), new { RenderItems = ListOfObjects})
- 而不是列表,使用
Dictionary
包含相同对象的 - 使用字典字典 - 所以每个项目本身就是具有上述属性的字典
它呈现任何东西的唯一方法是如果我使用匿名类,但无论我做什么,我都无法让它用命名项目填充模板。我确定我在这里遗漏了一些相当明显的东西,因为我认为这应该很简单,但是文档说“查看代码和测试”,但我无法确定哪个测试实际上正在处理这种情况。有人可以指出我正确的方向,还是提供一些示例代码?