我有一个使用外部DLL代码的网站。
dll不是网站的一部分。 (这是Dynamics AX 2012 CIL,但我认为这无论如何)。
该网站有dll,它在Rest技术中使用该代码(我使用MCV4用于VS 2010,而Rest API客户端工具用于chrome)。
代码运行罚款,但是当我做一些更改时,更改不反映在网站上(我看到代码的旧行为)。
我清理chrome中的所有历史记录 - 同样的问题。
对于我自己的用户:当我为Firefox安装Firefox + Rest工具时 - Firefox的正常工作(更改反映在网站上)。对于Chrome - 我仍然遇到了问题。
特定用户(其他用户 - 完全没有任何问题)。
所以,我认为可能是在web.config上使用服务器和浏览器之间的缓存的一些声明。
我是对的吗?如何调用服务器和浏览器之间的缓存?
这是chrome中的问题,还是我需要在web.config(或C#中)声明的内容?
如果我将新代码上传到网站(web.config上的特定时间戳或类似内容),我怎么能声明缓存只会刷新?
我在webapiconfig.cs中的代码(它是VSV的MCV4):
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);
}
}
我应该在C#或输出缓存IIS配置中写什么,如现场: http://www.iis.net/learn/manage/managing-performance-settings/walkthrough-iis-output-caching#05
谢谢:)
答案 0 :(得分:2)
DLL在服务器上运行,因此它是您需要清除的SERVER缓存,而不是浏览器缓存。
你在说C#所以我猜你正在使用IIS
单击服务器名称,然后转到输出缓存。 单击“添加缓存规则”,然后键入扩展名 - .dll
并按照提示禁用此扩展程序的缓存。