使用 Sitecore 6.6 和 Glass 3.0
我制作了一个通过 Glass 使用视图渲染的 MVC 布局。我正在尝试显示亮点。
我制作了一个名为 GlassHighlights 的视图渲染,其中设置了以下字段:
- 小路:
/Views/Renderings/KRN/GlassHighlight.cshtml
- 模型:
/sitecore/layout/Models/KRN/Highlights
Sitecore 中的模型具有以下字段集:模型类型:Models.Sitecore.Content.Items.HighLights.Models
视图渲染放置在名为 GlassTest 的项目的布局详细信息上(在其他一些渲染中),并放置在占位符“body”上。数据源设置为 sitecore 中的正确子文件夹。
这是在 C# 中定义的模型:
using System.Collections.Generic;
using Glass.Mapper.Sc.Configuration.Attributes;
namespace Models.Sitecore.Content.Items
{
/// <summary>
/// Container folder for the highlights
/// </summary>
[SitecoreType(AutoMap = true)]
public class HighLights
{
/// <summary>
/// Collection of Highlight items
/// </summary>
[SitecoreQuery(".//*[@@TemplateId='{EA8BF7CA-157F-4CF4-A2D8-36242304E8FA}']", IsRelative = true)]
public virtual IEnumerable<Highlight> Items { get; set; }
}
}
这是项目中定义的 razorview:
@inherits Glass.Mapper.Sc.Web.Mvc.GlassView<Models.Sitecore.Content.Items.HighLights>
<div class="row topHWContainer">
@{
foreach (var highlight in Model.Items)
{
<div class="four columns topHW column-first">
<a href="/eenheiddetails/@highlight.PublicatieID">
<img src="/Style/Images/bgkArrowRightBlack.png" alt="bgkArrowRightBlack" width="19" height="14">
<label>@highlight.Titel</label>
<img src="@highlight.AchterGrondImage.Src" alt="Pimpernel" width="302" height="218" class="topHWimg">
<div class="topHWinfo">
<label>@highlight.Plaats € @highlight.Huur</label>
</div>
</a>
</div>
}
}
</div>
当我在做实验时,代码在某些地方可能不是完全最优的。
现在问题来了:当我在本地运行网站时,它运行得非常好。一切都按照它应该呈现的方式呈现,所有数据都充满了应该从 Sitecore 出来的东西。
当我部署到登台时,模型没有填充,当它尝试启动 foreach 时我得到一个空引用异常。Model 本身不为 null,但 Model.Items 为 null。为什么会这样?我想指出,我的 local 指向 Sitecore Master,而 Staging 指向 Web;但我已经部署了所有涉及的项目。我监督了什么?
为什么没有本地工作和分期?