如何映射到 Sitecore 规则字段
How to map to Sitecore Rules Field
我在映射到 Sitecore 中的 Rules
数据字段时遇到了一些问题。我有一个渲染参数模板,其中有一个名为 "Redirect Rules."
的数据字段
我正在使用 TDS 和 Glass 将对象映射回 Sitecore。在生成的 class 中,我得到以下内容:
/// <summary>
/// The Redirect Rule field.
/// <para></para>
/// <para>Field Type: Rules</para>
/// <para>Field ID: 659373d6-c5c5-4851-aa1f-066f53218780</para>
/// <para>Custom Data: </para>
/// </summary>
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Team Development for Sitecore - GlassItem.tt", "1.0")]
[SitecoreField(IMy_Name_Rendering_ParametersConstants.Redirect_RuleFieldName)]
public virtual object /* UNKNOWN */ Redirect_Rule {get; set;}
当我试图通过
在视图渲染中获取 "Redirect Rules" 字段的值时
GetRenderingParameters<My_Name_Rendering_Parameters>();
"Redirect Rules"属性 为空。我已通过在体验编辑器中检查该字段来验证该字段是否填充了规则。
对可能发生的事情有任何线索吗?
克雷格。在此处查找将规则字段映射到字符串值的修改后的 T4 模板:https://gist.github.com/patrickperrone/9626cccbd044cc418539
这是我的blog post,更详细地介绍了这一点。
摘自我的 post:
The basic issue is that the glassv3item.tt template doesn't know how
to deal with the Rules
field. The GetGlassFieldByType
method is
responsible for assigning a type to mapped field. It does this with a
switch
statement. Our rules field is falling all the way through to
the default
case which maps the field to an object
. We need to add a
case for the field.Type
value when it equals "rules".
简短回答:当值等于 "rules".
时,我使用 string
类型作为映射的 field.Type
您可以在第 246-247 行亲自查看 here。
我在映射到 Sitecore 中的 Rules
数据字段时遇到了一些问题。我有一个渲染参数模板,其中有一个名为 "Redirect Rules."
我正在使用 TDS 和 Glass 将对象映射回 Sitecore。在生成的 class 中,我得到以下内容:
/// <summary>
/// The Redirect Rule field.
/// <para></para>
/// <para>Field Type: Rules</para>
/// <para>Field ID: 659373d6-c5c5-4851-aa1f-066f53218780</para>
/// <para>Custom Data: </para>
/// </summary>
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Team Development for Sitecore - GlassItem.tt", "1.0")]
[SitecoreField(IMy_Name_Rendering_ParametersConstants.Redirect_RuleFieldName)]
public virtual object /* UNKNOWN */ Redirect_Rule {get; set;}
当我试图通过
在视图渲染中获取 "Redirect Rules" 字段的值时GetRenderingParameters<My_Name_Rendering_Parameters>();
"Redirect Rules"属性 为空。我已通过在体验编辑器中检查该字段来验证该字段是否填充了规则。
对可能发生的事情有任何线索吗?
克雷格。在此处查找将规则字段映射到字符串值的修改后的 T4 模板:https://gist.github.com/patrickperrone/9626cccbd044cc418539
这是我的blog post,更详细地介绍了这一点。
摘自我的 post:
The basic issue is that the glassv3item.tt template doesn't know how to deal with the
Rules
field. TheGetGlassFieldByType
method is responsible for assigning a type to mapped field. It does this with aswitch
statement. Our rules field is falling all the way through to thedefault
case which maps the field to anobject
. We need to add a case for thefield.Type
value when it equals "rules".
简短回答:当值等于 "rules".
时,我使用string
类型作为映射的 field.Type
您可以在第 246-247 行亲自查看 here。