Glass Mapper 缓存值?

Glass Mapper Caching Value?

使用 Sitecore 8.0u3 和 Glass-Mapper 3.5.3

我 运行 遇到了一个我无法解决的有趣情况。我在某些控制器渲染中看到简单文本字段(单行、多行)的一些值似乎被缓存了。其他控制器效果图似乎没有这个问题。

我尝试像这样写出表单的介绍文本:

<div class="intro">@Editable(m => Model.ContextItem.Intro_Text)</div>
<div>RAW: @Model.ContextItem.Intro_Text</div>

请注意,第二行是我出于故障排除目的添加的。

在这种情况下,结果是:

Fill out the form to contact uss.

RAW: Fill out the form to contact uss.

我更新了 Sitecore 中的文本以删除多余的 's',保存并发布。我刷新我的页面,我看到了这个:

Fill out the form to contact uss.

RAW: Fill out the form to contact us.

所以不使用 Editable 的部分工作正常,但 Editable 版本继续显示 'old' 值。

我查看了很多设置,包括呈现的可缓存性、站点的可缓存性、Caching.Enabled 设置、Caching.HTMLLifetime 设置、IIS 缓存、发布限制,但是none 似乎影响了这个问题。

有没有其他地方的想法来寻找问题的根源?

我认为您需要使用语法 <div class="intro">@Editable(m => m.ContextItem.Intro_Text)</div> 而不是 <div class="intro">@Editable(m => Model.ContextItem.Intro_Text)</div>

我刚才遇到了这个问题。将语法更改为 @Editable(Model => Model.ContextItem.Intro_Text)

@Editable() 查看 HtmlString 并且很可能从 HtmlCache 中显示它。我也看到了这个问题,在构建过程中,我必须重新发布所有内容以清除缓存,特别是当我将进行数据模板更改时。

您可以在您的开发环境中尝试一些事情来缩小问题范围。

  1. 进行更改后,从 /sitecore/admin/cache.aspx 清除 HTML 缓存并再次检查页面。

  2. 尝试对网站进行增量发布,因为它会清除 HTML 缓存。

  3. 尝试重新发布网站。

此外,禁用

下网站的输出缓存