.NET Leer RSS y convertirlo en DataTable

Use .NET para leer datos RSS y convertirlos en DataTable. El método es muy simple. Mira el código.

Recientemente necesita recibir un RSS con ASP.NET (C#). RSS son los datos de su propio foro, y RSS agrega otro sub -item al elemento. Así que escribí una lectura universal de RSS y luego aumenté o eliminé sub -items en elementos en el futuro. Este código también se puede reconocer.
hmm … publique el código, registelo.

Código de copiaEl código es el siguiente:
Lea RSS Revolver a DataTable
/// <summary>
/// Obtén RSS y conviértalo en DataTable Back
        /// </summary>
/// <posm name = “FilePath”> Dirección RSS </Param>
        /// <returns></returns>
         public static DataTable GetRss(string filePath)
        {
            DataTable dt = new DataTable();
            WebClient wc = new WebClient();
            Stream srContent = wc.OpenRead(filePath);

            StreamReader sr = new StreamReader(srContent);
            if (!sr.EndOfStream)
            {
                XmlDocument xmlDoc = new XmlDocument();
                xmlDoc.Load(sr);
                XmlNodeList xnl = xmlDoc.SelectNodes(“rss/channel/item”);
                if (xnl.Count > 0)
                {
{// Agregar un logotipo de columna a DataTable
                        XmlNode xnColumn = xnl[0];
                        XmlNodeList columnsNode = xnColumn.ChildNodes;
                        foreach (XmlNode xn in columnsNode)
                        {
                            DataColumn dc = new DataColumn(xn.Name);
                            dt.Columns.Add(dc);
                        }
} // Agregar una identificación de columna a DataTable

{// Agregar datos a DataTable
                        foreach (XmlNode xnDate in xnl)
                        {
                            DataRow dr = dt.NewRow();
                            for (int i = 0; i < dt.Columns.Count; i++)
                            {
                                XmlNode itemValue = xnDate.SelectSingleNode(dt.Columns[i].ColumnName);
                                dr[i] = itemValue.InnerText;
                            }
                            dt.Rows.Add(dr);
                        }
} // Agregar datos de columna a DataTable
                }
            }
            return dt;
        }

Leave a Reply

Your email address will not be published. Required fields are marked *