C# 防止在for循环期间下载文件
如何防止每次调用函数时下载pdf,例如在循环过程中:C# 防止在for循环期间下载文件,c#,C#,如何防止每次调用函数时下载pdf,例如在循环过程中: public void Get(string message) { using (var webClient = new WebClient()) { var pdf = webClient.DownloadData("http://google.com/something.pdf"); // Do some process ..... } } 例如,循环函数: for(var i;
public void Get(string message)
{
using (var webClient = new WebClient())
{
var pdf = webClient.DownloadData("http://google.com/something.pdf");
// Do some process
.....
}
}
例如,循环函数:
for(var i; i > 100; i++)
{
Get("Help me");
}
如果你是说一次,你可以这样做: 将变量
i
设为全局变量,只有当变量0
时,WebClient才会下载:
我已将这两个选项放在多行评论中
正如@Adriano所说,最好使用HttpClient
inti;
专用字节[]cachedPdf;
公共void Get(字符串消息){
/*如果(i==0){
//做事
} */
}
公共静态void Main(字符串[]args){
对于(i=0;i<100;++i){
/*如果(i==0){
获取(“你好世界”);
} */
//做其他事情
}
}
WebClient(为什么WebClient而不是HttpClient?)会缓存您的文件,这样就不应该每次都(重新)下载它。难道您就不能传递一个可为空的bool变量,然后根据需要在循环中进行下载吗?等待不理电话?还是什么?@Kev Fixx-你应该考虑接受答案
int i;
private byte[] cachedPdf;
public void Get(string message){
/* if(i == 0){
// do stuff
} */
}
public static void Main(string[] args){
for(i = 0; i < 100; ++i){
/* if(i == 0){
Get("Hello world");
} */
// Do other stuff
}
}