Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 2个有效请求,然后超时_.net_Http_Webrequest - Fatal编程技术网

.net 2个有效请求,然后超时

.net 2个有效请求,然后超时,.net,http,webrequest,.net,Http,Webrequest,这是我的密码。它迭代数据库中的所有文件,并尝试获取web文件的长度。它只工作2次。在此之后,它给出超时。如果我重新启动应用程序,它会再次处理2个文件,然后失败。我不知道可能是什么问题。谢谢你的帮助 public void GetFilesSize() { List<int> ftl = new List<int>(){(int)eFileTypes.JADFile, (int)eFileTypes.SISFile, (int)eFileTy

这是我的密码。它迭代数据库中的所有文件,并尝试获取web文件的长度。它只工作2次。在此之后,它给出超时。如果我重新启动应用程序,它会再次处理2个文件,然后失败。我不知道可能是什么问题。谢谢你的帮助

    public void GetFilesSize()
    {
        List<int> ftl = new List<int>(){(int)eFileTypes.JADFile, (int)eFileTypes.SISFile, (int)eFileTypes.SITFile, (int)eFileTypes.ZIPFile };

        foreach (File f in dc.Files.Where(fg => ftl.Contains(fg.FileTypeID) && fg.Size == 0))
        {
            try
            {
                WebRequest request = WebRequest.Create(new Uri(f.MSWebPath));
                request.Method = "HEAD";
                request.Timeout = 2000;
                WebResponse response = request.GetResponse();
                dc.Files.Single(f1 => f1.FileID == f.FileID).Size = (int)response.ContentLength;
                dc.SubmitChanges();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
            }
        }
    }
public void getfilesize()
{
List ftl=new List(){(int)eFileTypes.JADFile,(int)eFileTypes.SISFile,(int)eFileTypes.SITFile,(int)eFileTypes.ZIPFile};
foreach(dc.Files.Where(fg=>ftl.Contains(fg.FileTypeID)和&fg.Size==0)中的文件f)
{
尝试
{
WebRequest=WebRequest.Create(新Uri(f.MSWebPath));
request.Method=“HEAD”;
请求超时=2000;
WebResponse=request.GetResponse();
Single(f1=>f1.FileID==f.FileID).Size=(int)response.ContentLength;
dc.提交更改();
}
捕获(例外情况除外)
{
Console.WriteLine(例如ToString());
}
}
}

对于一次只处理来自给定客户端的两个请求的默认行为,这可能是一个问题吗?在继续下一个请求之前,是否需要强制关闭请求?也许这会让您超过2次命中限制。

在问题和标记中添加编程语言将帮助您获得一些答案。是C#、java还是其他什么?+1。是的,这就是问题所在。您必须关闭响应。上周我也有同样的问题。