如何使用Babaganoush处理Sitefinity中的分层模块?

时间:2014-07-14 19:05:53

标签: c# sitefinity babaganoush-sitefinity

在为项目动态模块创建模型时,如何处理分层模块?

假设我们有一个名为Careers的模块,其父ContentType为“Jobs”,子项为“Applications”。

1 个答案:

答案 0 :(得分:3)

要设置模型层次结构,您需要在您创建的动态模型上实现IHierarchy接口。这意味着您将拥有Parent类型的DynamicModel属性。

在构造函数中,通过将SystemParentItem传递给您在其他地方创建的父模型的构造函数(以映射属性值),将JobModel分配给父项。

以下是public class JobModel : DynamicModel, IHierarchy { public string Description { get; set; } public DynamicModel Parent { get; set; } public override string MappedType { get { return "Telerik.Sitefinity.DynamicTypes.Model.Applications.Job"; } } public JobModel() : base() { } public JobModel(DynamicContent sfContent) : base(sfContent) { if (sfContent != null) { Description = sfContent.GetStringSafe("Description"); Parent = new CareerModel(sfContent.SystemParentItem); } } } 的示例:

{{1}}