2016-10-10 89 views
4

我想获取当前项目级别的所有项目。我正在使用Glass Mapper SitecoreQuery。我能够获得当前项目但无法映射所有兄弟姐妹Sitecore玻璃映射器获取所有兄弟姐妹

public class TestModel:BaseModel 
{ 
    [SitecoreQuery("../*")] 
    public virtual IEnumerable<Model1> Siblings { get; set; } 
} 

[SitecoreType(AutoMap = true)] 
public class Model1 : BaseModel 
{ 

} 

基本模型具有所有必需的字段并正确映射。我实际上试图显示当前项目级别的所有项目。

+1

尝试更多的信息,第二个参数添加到'SitecoreQuery':'而isRelative = TRUE;这样的:'[SitecoreQuery( “../*”,而isRelative =真)]' –

+0

您是否试图只在同一级别或兄弟姐妹获得所有物品(即不包括当前物品)? – jammykam

+1

IsRelative最后很重要,它告诉Glass.Mapper执行相对于类表示的项目的查询。你也应该在你的TestModel类上面添加'[SitecoreType(AutoMap = true)]'。 –

回答

0

添加第二个参数为SitecoreQueryIsRelative = true这样的:

[SitecoreQuery("../*", IsRelative = true)] 
public virtual IEnumerable<Model1> Siblings { get; set; } 

它告诉Sitecore的在您的项目水平,而不是开始于树根开始查询。

您可以找到Official Sitecore Glass Mapper Tutorial