C# 防止在for循环期间下载文件

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;

如何防止每次调用函数时下载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; 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
    } 
}