2016-11-21 51 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的新实例时 - 它有相当的开销,并且创造了太多的实例可以杀死你的网站的性能。 –