正确清除 Umbraco 7 中的缓存

Correctly clearing cache in Umbraco 7

老实说,我不知道 Umbraco 如何处理清除其缓存。我目前正在开发一个 属性 编辑器,我希望在内容部分看到我的更改结果。然而,每当我保存我的更改、构建项目并刷新页面时,什么都没有改变。

我试过删除缓存文件夹,更改 web.config 文件,安装特殊的 chrome 扩展来进行硬重置,清除整个缓存,关闭和打开 Visual Studio 似乎没有任何区别。

如何让 Umbraco 更新其缓存以反映我对内容部分中的 属性 编辑器所做的更改?

您是否尝试过将查询字符串添加到 URL 的末尾?在插件 package.manifest 中,您可以在 url 的末尾添加一个随机查询字符串,以便浏览器需要重新缓存 url

例如。 "~/App_Plugins/Javascript Url" + "?v=123432asdsa"

Umbraco 使用 Client Dependency Framework 将所有必需的资产连接在一起。然后将它们缓存并存储在 \App_Data\TEMP\ClientDependency\.

您可以删除这些以刷新缓存。

您可以通过将您的应用程序置于调试模式来阻止 Umbraco 使用 CDF。在您的 Web.config 中,找到 compilation 项目并将 debug 更改为等于 true:

<compilation defaultLanguage="c#" debug="true" batch="false" targetFramework="4.5">

当 Umbraco 设置为 false 调试模式时,将执行这样的调用以获取资产的缓存版本:/DependencyHandler.axd?s=

当 Umbraco 处于调试模式时,将直接调用您的自定义资产(以及任何其他需要的资产)。

您还需要像以前一样硬刷新浏览器,否则您的浏览器也可能在本地缓存文件。