代码返回错误 名为“link”的列已属于

本文关键字:属于 link 返回 错误 名为 代码 | 更新日期: 2023-09-27 18:27:33

 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 - 名为"link"的列已属于此数据表:无法将嵌套表名称设置为相同的名称。 2 - 远程服务器返回错误:(407( 需要代理身份验证。

谢谢!

代码返回错误 名为“link”的列已属于

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

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

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

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

    XmlNodeList xmlNodeList = xmlDoc.SelectNodes("your XPath expression");
    
  5. 现在,您可以循环 RSS 源项目以获取所需的内容:

     for (int i = 0; i < xmlNodeList.Count; i++)
        {
            XmlNode xmlNode;
            xmlNode = xmlNodeList.Item(i).SelectSingleNode("ProductName");
            //xmlNode.InnerText;
        }
    

第二个问题:

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

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

至于第一个问题:

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

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

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