【问题标题】:Using CacheCow with asp.net MVC kendoUI将 CacheCow 与 asp.net MVC kendoUI 一起使用
【发布时间】:2015-05-29 13:13:45
【问题描述】:

我一直在研究安装 CacheCow (https://github.com/aliostad/CacheCow),只需应用 nuget 包,然后添加:

GlobalConfiguration.Configuration.MessageHandlers.Add(new CacheCow.Server.CachingHandler(GlobalConfiguration.Configuration));

到我的全局配置文件。但是,一旦我这样做了,我的网格都不会正确刷新,它们都会缓存旧值,而不管新数据是否可用。我已经使用了标题:

[OutputCache(NoStore = true, Duration = 0, VaryByParam = "*")]  
public JsonResult _GetProjectList([DataSourceRequest] DataSourceRequest request)
{
    return Json(data.ToDataSourceResult(request, ModelState), JsonRequestBehavior.AllowGet);
}

用于顶部的输出缓存,但这似乎没有帮助。任何人都有将 cachecow 与 kendo 数据源一起使用的经验,以及如何让它们相互协作?

【问题讨论】:

    标签: kendo-ui asp.net-mvc-5 kendo-asp.net-mvc cachecow


    【解决方案1】:

    您可以尝试将此作为解决方案。

    [OutputCache(NoStore = true, Duration = 0, VaryByParam = "*")]  
    public JsonResult _GetProjectList([DataSourceRequest] DataSourceRequest request)
    {
        //force the response to not cache the results. 
        this.Response.Cache.SetCacheability(HttpCacheability.NoCache);
    
    
        //some code here......
        return Json(data.ToDataSourceResult(request, ModelState), JsonRequestBehavior.AllowGet);
    }
    

    不久前,当我注意到一些 Kendo 小部件没有正确更新其数据源时,我不得不这样做。 (当我在浏览器的开发工具中关闭浏览器缓存时,它们确实更新了)。

    虽然我没有使用过那个特定的包,但希望这对你有用。

    【讨论】:

    • 感谢您的想法,但不幸的是,这并没有解决我的问题。我猜你的行在很大程度上与我的属性做同样的事情。 CacheCow 似乎忽略了该设置,我在他们的文档中没有看到有关如何更改该设置的任何地方
    猜你喜欢
    • 1970-01-01
    • 2010-10-04
    • 2010-09-09
    • 2011-06-26
    • 1970-01-01
    • 2014-09-27
    • 2014-09-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多