2016-04-17 36 views
4

我想填充我的当前模型与不同文件夹中的子项目列表。玻璃贴图工具从链接路径填充列表

在我目前的模型中,我想定义一个类型为General Link的字段,在该字段中我将从Sitecore中选择具有不同子项目的项目。 “公共虚拟IEnumerable列表”应填入上述子项目。

我已阅读有关如何可以使以下类型的查询不同岗位:

[SitecoreQuery( “./*[@@ TEMPLATENAME = '见证']”,而isRelative =真)]
公共虚拟IEnumerable Children {get;组; }

但这并不适用于我的情况,因为很可能我会在不同的区域使用此模板,我不想将其包含在此处。

有谁知道这是可能与玻璃或我应该只是使用自定义查询填充项目子项目列表?

回答

1

如果您使用droplink或droptree字段而不是通用链接,则可以通过创建通用文件夹模型来执行您想要的操作。

namespace MySite.Models 
{ 
    [SitecoreType(AutoMap = true)] 
    public class Folder<T> : GlassBase 
    { 
     [SitecoreChildren] 
     public virtual IEnumerable<T> Children { get; set; } 
    } 
} 

,然后从另一个模型,像这样使用它:

[SitecoreField("My Link Field")] 
public virtual Folder<ChildModel> MyLinkField { get; set; }