【问题标题】:Handling CheckboxField in GlassMapper在 GlassMapper 中处理 CheckboxField
【发布时间】:2016-03-08 14:15:27
【问题描述】:

我目前正在使用 Glass Mapper 将 sitecore 树中的项目映射到 C# 中的模型类,但是在尝试读取项目上复选框字段的 Checked 参数时遇到问题。

如何读取 Checked 属性?我尝试将下面的字段设置为 CheckboxField 数据类型,但仍然无法加载我需要的数据。

是否需要创建另一个模型类来提取 CheckboxField 模板数据值?

类属性定义

[SitecoreField("Is Gold Class Package")]
public virtual CheckboxField IsGoldClassPackage { get; set; }

Razor 标记

@foreach (var package in Model.LoyaltyPackages.LoyaltyPackageDataItems)
{
    <div vrewards-item title="@package.Title" unlocked price="@package.Points" icon="@package.Icon"
        @(package.IsGoldClassPackage.Checked == true ? goldClassAttrribute : "") >
    </div>
}

【问题讨论】:

    标签: c# asp.net-mvc checkbox sitecore glass-mapper


    【解决方案1】:

    在 Glass 中,您不映射字段,而只是映射值。所以你的领域模型应该是这样的:

    [SitecoreField("Is Gold Class Package")]
    public virtual bool IsGoldClassPackage { get; set; }
    

    在您看来,您可以简单地从模型中获取价值:

    @foreach (var package in Model.LoyaltyPackages.LoyaltyPackageDataItems)
    {
        <div vrewards-item title="@package.Title" unlocked price="@package.Points" icon="@package.Icon"
            @(package.IsGoldClassPackage == true ? goldClassAttrribute : "") >
        </div>
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多