即使将null传递给通过控制器查看,模型也具有值

时间:2016-11-10 09:36:16

标签: model-view-controller sitecore glass-mapper

我使用Glass mapper将Sitecore项映射到类对象。

在我将null传递给视图的模块之一中,模型仍然具有值。它似乎是继承页面属性。以下是截图。

Screen shot 1: Passing null value to view

Screen shot 2: Model in view still has a value

以下是TDS生成的Related_Content代码:

/// <summary>
/// Related_Content
/// <para></para>
/// <para>Path: /sitecore/templates/User Defined/PokerCentral/Component Templates/Data Templates/Callouts/Related Content</para>    
/// <para>ID: 2b54f9fd-1fb5-4638-98b0-0acd420c5b81</para>   
/// </summary>
[SitecoreType(TemplateId=IRelated_ContentConstants.TemplateIdString)] //, Cachable = true
public partial class Related_Content  : GlassBase, IRelated_Content
{

                    /// <summary>
            /// The Item Listing field.
            /// <para></para>
            /// <para>Field Type: Treelist</para>       
            /// <para>Field ID: 7a77a177-c5e0-4f74-9235-c5c6b709f7a0</para>
            /// <para>Custom Data: </para>
            /// </summary>
            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Team Development for Sitecore - GlassItem.tt", "1.0")]
            [SitecoreField(IRelated_ContentConstants.Item_ListingsFieldName)]
            public virtual IEnumerable<Guid> Item_Listings  {get; set;}

                    /// <summary>
            /// The Title field.
            /// <para></para>
            /// <para>Field Type: Single-Line Text</para>       
            /// <para>Field ID: 5abe46db-487c-4f1b-8a3c-d3e0ed515d9c</para>
            /// <para>Custom Data: </para>
            /// </summary>
            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Team Development for Sitecore - GlassItem.tt", "1.0")]
            [SitecoreField(IRelated_ContentConstants.TitleFieldName)]
            public virtual string Title  {get; set;}

                    /// <summary>
            /// The Base Category field.
            /// <para></para>
            /// <para>Field Type: Droplink</para>       
            /// <para>Field ID: 1cb2b0a4-f7e7-4cbe-b49b-7d660106365a</para>
            /// <para>Custom Data: </para>
            /// </summary>
            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Team Development for Sitecore - GlassItem.tt", "1.0")]
            [SitecoreField(IRelated_ContentConstants.Base_CategoryFieldName)]
            public virtual Guid Base_Category  {get; set;}

                    /// <summary>
            /// The Base Tags field.
            /// <para></para>
            /// <para>Field Type: Multilist with Search</para>      
            /// <para>Field ID: 072c54de-8fde-47f8-aaa0-2b0b1bd8843b</para>
            /// <para>Custom Data: </para>
            /// </summary>
            [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Team Development for Sitecore - GlassItem.tt", "1.0")]
            [SitecoreField(IRelated_ContentConstants.Base_TagsFieldName)]
            public virtual IEnumerable<Guid> Base_Tags  {get; set;}


}

有人可以告诉我如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

您继承自GlassView<Related_Content> Glass如果您的渲染位于上下文项目中,则会自动加载模型。

如果要从控制器传递模型,请不要继承Glass视图而是使用 @model Related_Content

通过查看代码,您将数据源传递给您的视图。如果您继承Glass View,它会将数据源加载到模型中。