0
我試圖使用Nustache,以便我可以在ASP.Net Web應用程序中的後端和前端代碼之間共享渲染模板。當我將一個對象傳遞給一個模板時它工作的很好,但我無法弄清楚如何讓它呈現一個集合。所以,如果我有這樣的一個模板:如何使用Nustache呈現對象集合?
{{#RenderItems}}
<th data-warning="{{WarningLevel}}" data-limit="{{LimitLevel}}">{{TotalHours}}</th>
{{/RenderItems}}
然後我想對象的集合中傳遞,並得到了一套th
元素。
事情我已經嘗試:
- 創建具有性能
WarningLevel
,LimitLevel
和TotalHours
一類,對象添加到List
並直接傳遞: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
- 使用字典詞典 - 所以每個產品本身上面
它呈現在所有東西的唯一方法命名屬性的字典是,如果我用一個匿名類,但我不能讓它填充模板與我所做的任何事物相關。我相信我在這裏錯過了一些相當明顯的東西,因爲我認爲這應該是直截了當的,但文檔說'查看代碼和測試',但我無法確定哪個測試實際處理這種情況。有人可以指出我正確的方向,還是提供一些示例代碼?
好的,謝謝 - 這將是多麼容易轉化爲標準的ASP.Net?我想我可以嘗試創建一個'ViewData'對象? – robertc
我得看看它。我只使用Nustache和MVC,但我不確定它是如何依賴MVC的功能,如ViewData。 – gram
我定義了一個像這樣的字典對象:'var RenderItems = new Dictionary>();'然後用鍵傳遞我的列表,並且工作:) –
robertc