Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.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
C# System.Net.WebException:操作仅在某些计算机上超时_C#_Xml_Networking_Rss - Fatal编程技术网

C# System.Net.WebException:操作仅在某些计算机上超时

C# System.Net.WebException:操作仅在某些计算机上超时,c#,xml,networking,rss,C#,Xml,Networking,Rss,我将以我能够在学校拥有的计算机上运行此代码,并且我有多个朋友在他们的计算机上成功运行此代码的事实作为代码和解释的序言 我有一些C#代码,应该从URL检索RSS提要 public void GetRSS(string url) { // Connect to the web server HttpWebRequest wr = (HttpWebRequest)WebRequest.Create(url); // Set th

我将以我能够在学校拥有的计算机上运行此代码,并且我有多个朋友在他们的计算机上成功运行此代码的事实作为代码和解释的序言

我有一些C#代码,应该从URL检索RSS提要

        public void GetRSS(string url)
    {
        // Connect to the web server
        HttpWebRequest wr = (HttpWebRequest)WebRequest.Create(url);

        // Set the HTTP properties
        wr.Timeout = 9000;

        // Read the Response
        WebResponse resp = wr.GetResponse();
        Stream stream = resp.GetResponseStream();

        // Load XML Document
        XmlTextReader reader = new XmlTextReader(stream);
        reader.XmlResolver = null;

        xml = new XmlDocument();
        xml.Load(reader);

        //Select the "RSS items" from the feed
        XmlNodeList items = xml.SelectNodes("//item");

        //Open a serializer
        XmlSerializer serializer =
                new XmlSerializer(typeof(Rss));

        using (XmlReader xreader = XmlReader.Create(new StringReader(xml.OuterXml)))
        {
            reader.MoveToContent();
            rss = (Rss)new XmlSerializer(typeof(Rss)).Deserialize(xreader);
        }

        resp.Close();

    }
这总是在行中抛出“System.Net.WebException:操作已超时”

WebResponse resp = wr.GetResponse();
我的问题是,我不明白为什么这不起作用。我假设无法连接到URL,但无论我尝试了多少个URL,它都无法工作。它只是挂起几秒钟,然后出现错误


为了澄清,该程序在我试过的每台机器上都能完美地执行,除了我需要在其上编写程序的家用计算机。

您的计算机上是否有一个软件防火墙,它可能会阻止来自它无法识别的源的web流量?如果您有防火墙,请在运行前尝试禁用。这看起来像是连接问题,因为相同的代码在其他计算机上运行。如果在浏览器中键入URL会发生什么?我禁用了防火墙,但问题仍然存在。我可以访问我在浏览器中尝试过的每个URL,只是不能通过应用程序。