Google chrome Chrome正在检索旧代码,甚至清除所有历史记录

Google chrome Chrome正在检索旧代码,甚至清除所有历史记录,google-chrome,firefox,Google Chrome,Firefox,我有一个网站,它使用外部dll代码 dll不是网站的一部分。(这是动态AX 2012 CIL,但我认为这无关紧要) 该网站有dll,在Rest技术中使用该代码(我在VS2010中使用MCV4,在chrome中使用RESTAPI客户端工具) 代码运行良好,但当我做一些更改时,这些更改不会反映在站点上(我看到了代码的旧行为) 我用chrome清理了所有的历史记录-同样的问题 对于我自己的用户:当我为Firefox安装Firefox+Rest工具时,Firefox的工作正常(更改反映在网站上)。对于C

我有一个网站,它使用外部dll代码

dll不是网站的一部分。(这是动态AX 2012 CIL,但我认为这无关紧要)

该网站有dll,在Rest技术中使用该代码(我在VS2010中使用MCV4,在chrome中使用RESTAPI客户端工具)

代码运行良好,但当我做一些更改时,这些更改不会反映在站点上(我看到了代码的旧行为)

我用chrome清理了所有的历史记录-同样的问题

对于我自己的用户:当我为Firefox安装Firefox+Rest工具时,Firefox的工作正常(更改反映在网站上)。对于Chrome,我仍然有问题

这种情况发生在特定用户(其他用户-根本没有任何问题)

因此,我推测可能是web.config上的一些声明在服务器和浏览器之间使用缓存

我说得对吗?这是如何调用服务器和浏览器之间的缓存的

这是chrome中的问题,还是我需要在web.config(或C#)中声明的问题

我如何声明只有在我将新代码上传到站点(web.config上的特定时间戳,或类似的东西)时才会刷新缓存

我在webapiconfig.cs中的代码(它是VS 2010的MCV4):

我应该在C#或输出缓存IIS配置中写什么,如在现场:


谢谢:)

DLL在服务器上运行,因此需要清除的是服务器缓存,而不是浏览器缓存

你说的是C#所以我猜你在用IIS

单击服务器名称,然后转到输出缓存。 单击添加缓存规则,然后键入扩展名-.dll


并按照提示禁用此扩展的缓存。

我不希望最终用户进行某些干预来清除他们自己的浏览器。我希望每次更改时都可以在web.config(或在配置中)上配置一些东西(当我进行更改时,客户端上的缓存只会刷新一次)。谢谢。我使用的是Windows 2012 R2,还有IIS和C#。我不知道该怎么办。作为解释,我应该选择什么?内核模式缓存还是用户模式?我在哪里可以选择dll?我不认为你不能选择特定的dll。但是您可以避免缓存dll扩展名。只需使用文件更改通知,就足够了。选择.DLL作为扩展名。这将在更新所有DLL文件时清除其服务器缓存。这不起作用(我现在有一个案例,即使在firefox和chrome上,我也看不到更改)。我有Dynamics AX 2012。代码在CIL后面。我不知道这是否是DLL,但它更复杂的只是DLL?该站点使用business connector代理(声明连接到代理帐户的应用程序工具)。。。我认为web.config或C#中可能有解决方案,这可能比添加缓存规则更强大,如上所述:
    public static class WebApiConfig
{
    public static void Register(HttpConfiguration config)
    {
        config.Routes.MapHttpRoute(
            name: "DefaultApi",
            routeTemplate: "{controller}/{id}",
            defaults: new { id = RouteParameter.Optional }
        );
        FormUrlEncodedMediaTypeFormatter f;
        config.Formatters.Clear();
        config.Formatters.Add(new JsonMediaTypeFormatter());
        f = new FormUrlEncodedMediaTypeFormatter();
        f.SupportedMediaTypes.Add(new MediaTypeHeaderValue("application/x-www-form-urlencoded"));
        config.Formatters.Add(f);
    }
}