0
 public partial class Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

        try
        {
            DataSet ds = new DataSet();
            ds.ReadXml(@"http://tecnologia.ig.com.br/rss.xml");

            XmlDocument doc = new XmlDocument();
            XmlUrlResolver resolver = new XmlUrlResolver();
            resolver.Credentials = new System.Net.NetworkCredential("bruno", "*****");//intentionally hiding real password from stackoverflow
            doc.XmlResolver = resolver;

            foreach (DataRow dr in ds.Tables["item"].Rows)
            {
                Response.Write("Item TITLE: " + dr["title"].ToString() + "<br />");
                Response.Write("Descrição : " + dr["description"].ToString() + "<br />");
                Response.Write("Data de Publicação: " + dr["pubDate"].ToString() + "<br />");
            }
        }
        catch (Exception ex)
        {
            throw new Exception(ex.Message);
        }
    }
}

我执行代码,系统返回两个错误
1 ​​- 名为“链接”的列已属于此数据表:无法将嵌套表名称设置为相同的名称。2 - 远程服务器返回错误:(407) 需要代理身份验证。

谢谢!

4

2 回答 2

1

只需提供一个阅读 RSS Feed 的想法:

  1. 创建一个 WebRequest 和 WebReponse 对象:

    WebRequest request=WebRequest.Create("your url");
    WebReponse response=request.GetRespose();
    
  2. 创建一个 XML 文档并使用来自响应对象的流加载 XML 文档:

    Stream rssStream=response.GetResponseStream();
    XMLDocument xmlDoc=new XMLDocument();
    xmlDoc.Load(rssStream);
    
  3. 使用 XMLNodeList 从 XMLDocument 中检索匹配的 XML 节点:

    XmlNodeList xmlNodeList = xmlDoc.SelectNodes("your XPath expression");
    
  4. 现在您可以循环 RSS 提要项以获得您想要的内容:

     for (int i = 0; i < xmlNodeList.Count; i++)
        {
            XmlNode xmlNode;
    
            xmlNode = xmlNodeList.Item(i).SelectSingleNode("ProductName");
            //xmlNode.InnerText;
        }
    
于 2013-08-13T13:02:07.587 回答
0

第二个问题:

您可能有一个公司代理,请尝试在 web.config 中使用它:

<system.net>
  <defaultProxy useDefaultCredentials="true" />
</system.net>

至于第一个问题:

http://forums.asp.net/t/1220157.aspx/1

该问题可能是因为 XML 将允许重复节点,而数据表不允许重复列,因此您无法直接解析为数据表。

我建议在深入了解数据表路径之前对解析和使用 XML 数据进行一些研究

于 2013-08-13T12:58:06.513 回答