无法在asp.net

时间:2017-08-20 15:15:07

标签: asp.net xml

当我运行此代码时:

@inherits Umbraco.Web.Macros.PartialViewMacroPage

@using System.Xml;

@{
    XmlDocument vXmlDocument = new XmlDocument();
    string vUrl = "https://www.herefordshire.gov.uk/info/200142/planning_services/planning_application_search/rss?search-term=brilley&search-service=search&search-source=the%20keyword&search-item=brilley";

    vXmlDocument.Load(vUrl);

    XmlElement vRss = vXmlDocument.DocumentElement;

    XmlNode vChannel = vRss.FirstChild;

    XmlNodeList vChildNodes = vChannel.ChildNodes;

    foreach (XmlNode vXmlNode in vChildNodes)
    {
        if (vXmlNode.Name == "item")
        {
            <div>
                <a href="@vXmlNode["link"].InnerText" target="_blank">@vXmlNode["title"].InnerText</a>
            </div>
        }
    }

}

vXmlDocument.Load(vUrl);

我收到错误:

  

基础连接已关闭:发送时发生意外错误。

我正在使用的链接会显示一个XML文件,如您所见。如果我制作vUrl = http://ubeumbraco.co.uk/BrilleyApplications.xml,那么它可以正常工作。

我做错了什么?

非常感谢您的帮助。

在期待中感谢你。

罗杰

1 个答案:

答案 0 :(得分:0)

您提供的网址不是XmlDocument.Load期望的XML文件。它是一个以XML格式返回响应的Web服务。

您可以先下载响应字符串,然后调用XmlDocument.LoadXml将字符串解析为XmlDocument实例。

using(var wc = new WebClient())
{
    string xmlStr = wc.DownloadString(vUrl);
    vXmlDocument.LoadXml(xmlStr);
}