首页 > 解决方案 > 如何在 Sitecore Glass.Mapper 中映射 DropList

问题描述

我在 Sitecore 中使用 GlassMapper v5 映射 Sitecore 项目。

我们使用 GlassMapper 实现了以下类。
但是,虽然为ItemTemplate项获取了该字段的值,但是在ItemTemplate中创建的Droplist字段(CategoryTemplate)的值已经被返回,NULL并且无法获取。

[SitecoreType(TemplateId = "9876...", AutoMap = true)]
public class ItemTemplate
{
    [SitecoreParent]
    public virtual Common Parent { get; set; }

    [SitecoreField(FieldName = "Category", FieldType = SitecoreFieldType.Droplist)]
    public virtual CategoryTemplate Category { get; set; }
}

[SitecoreType(TemplateId = "1234...", AutoMap = true, TemplateName = "CategoryTemplate")]
public class CategoryTemplate
{
    [SitecoreField(FieldName = "Id")]
    public virtual string CategoryId { get; set; }
    [SitecoreField(FieldName = "Name")]
    public virtual string CategoryName { get; set; }
}

环境信息: - Sitecore 9.0.2 - GlassMapper 5.0.6.0

请问我错过了什么?

标签: sitecoreglass-mapper

解决方案


试试 SitecoreFieldType.DropLink。DropList 类型存储字符串值。您的模板也需要更改为 droplink。


推荐阅读