C# HttpClient未在临时服务器上使用缓存

C# HttpClient未在临时服务器上使用缓存,c#,asp.net-mvc,caching,dotnet-httpclient,C#,Asp.net Mvc,Caching,Dotnet Httpclient,我在MVC应用程序中使用了一个HttpClient,如下所示: new HttpClient(new WebRequestHandler() { CachePolicy = new RequestCachePolicy(RequestCacheLevel.CacheIfAvailable) }); StatusCode: 200, ReasonPhrase: 'OK', Version: 1.1, Content: System.Net.Http.StreamContent, Head

我在MVC应用程序中使用了一个HttpClient,如下所示:

new HttpClient(new WebRequestHandler()
{
    CachePolicy = new RequestCachePolicy(RequestCacheLevel.CacheIfAvailable)
});
StatusCode: 200, ReasonPhrase: 'OK', Version: 1.1, Content: System.Net.Http.StreamContent, Headers:
{
  Cache-Control: must-revalidate, max-age=3600
  Date: Thu, 13 Mar 2014 10:26:41 GMT
  Location: <snip!>/api/customers/TEST
  X-AspNet-Version: 4.0.30319
  Content-Length: 246
  Content-Type: application/json; charset=utf-8
  Expires: Thu, 13 Mar 2014 11:26:42 GMT
}
我发出了一个请求,并得到如下回复:

new HttpClient(new WebRequestHandler()
{
    CachePolicy = new RequestCachePolicy(RequestCacheLevel.CacheIfAvailable)
});
StatusCode: 200, ReasonPhrase: 'OK', Version: 1.1, Content: System.Net.Http.StreamContent, Headers:
{
  Cache-Control: must-revalidate, max-age=3600
  Date: Thu, 13 Mar 2014 10:26:41 GMT
  Location: <snip!>/api/customers/TEST
  X-AspNet-Version: 4.0.30319
  Content-Length: 246
  Content-Type: application/json; charset=utf-8
  Expires: Thu, 13 Mar 2014 11:26:42 GMT
}
StatusCode:200,原因短语:“确定”,版本:1.1,内容:System.Net.Http.StreamContent,标题:
{
缓存控制:必须重新验证,最大年龄=3600
日期:2014年3月13日星期四格林尼治标准时间10:26:41
位置:/api/客户/测试
X-AspNet-Version:4.0.30319
内容长度:246
内容类型:application/json;字符集=utf-8
到期时间:2014年3月13日星期四11:26:42 GMT
}
在我的本地服务器上,它可以正常工作,但在登台服务器上,当调用相同的URL时,服务仍然会受到影响;缓存未被使用

使用该服务的MVC站点托管在IIS7上,开发时我使用的是IIS Express


为什么在我的本地机器(缓存工作的地方)和临时服务器(缓存不工作的地方)上运行它会有区别,我如何修复它以使缓存在这两种情况下都能工作?

我不是100%了解这一点,但我相信,因为HttpClient使用WinInet代理进行缓存,作为服务运行时,它将不起作用。即在IIS下。
有关详细信息,请参阅。

有趣!所以,下一个明显的问题是,我如何解决这个问题?是否有其他的请求处理程序可以使用?我不想自己重新创建http缓存逻辑。@geogeduckett。我一直在为wininet缓存开发一个基于messagehandler的替代品。目前,只有一个用于缓存的InMemoryStore,需要做一些工作才能使存储线程安全。谢谢。我现在真的没有时间捐款(妻子的截止日期是昨天!),但我肯定会关注这个项目。