C#:无法绕过缓存(WebClient)

时间:2009-12-02 06:16:33

标签: c# .net webclient

WebClient Client = new WebClient();
Client.CachePolicy = new System.Net.Cache.RequestCachePolicy(System.Net.Cache.RequestCacheLevel.BypassCache);

为什么上面的代码实际上并没有阻止通过.Net Web客户端缓存网站?

1 个答案:

答案 0 :(得分:0)

string xmlUrl = "http://myserver.com/xmlfile.xml";

WebClient client = new WebClient();

// prevent file caching by windows
client.CachePolicy = new System.Net.Cache.RequestCachePolicy(
System.Net.Cache.RequestCacheLevel.NoCacheNoStore
);

// read content of file
Stream rssStream = client.OpenRead(xmlUrl);

使用No Cache No Store。

修改:如果不起作用,请尝试使用webrequest / webresponse:

 WebRequest request = WebRequest.Create(uri);
        // Define a cache policy for this request only. 
        HttpRequestCachePolicy noCachePolicy = new HttpRequestCachePolicy(HttpRequestCacheLevel.NoCacheNoStore);
        request.CachePolicy = noCachePolicy;
        WebResponse response = request.GetResponse();