2016-11-21 17 views
0

我在「AppData」模式下使用Umbraco 7.5和ModelsBuilder,我有一個Settings文檔類型和內容節點,當然沒有視圖(模板)。Umbraco:使用ModelsBuilder爲節點創建模型對象?

在一個全球性的代碼文件,我創建設置節點的一個實例是這樣的:

IPublishedContent Settings = new UmbracoHelper(UmbracoContext.Current).TypedContent(123); 

現在,我怎麼可以創建一個初始化由ModelsBuilder創建的模型?雖然我可以調用Settings.GetPropertyValue(...),但我想初始化並使用ModelsBuilder爲我生成的「SiteSettings.generated.cs」強類型模型,該模型已包含我已定義的屬性。

你能幫忙嗎?

回答

1

好了,這裏就是答案:通過ModelsBuilder產生的所有從PublishedContentModel,其具有接收IPublishContent對象作爲輸入和實例化模型對象爲你構造繼承

的車型。因此,代碼是(站點設置是模型類的名稱):

IPublishedContent settingsNode = new UmbracoHelper(UmbracoContext.Current).TypedContent(123); 
var settingsModel = new SiteSettings(settingsNode); 
+0

胎面精心打造UmbracoHelper的新實例時 - 它有相當的開銷,並且創造了太多的實例可以殺死你的網站的性能。 –