#653 - Estrarre un nodo a caso da un file XML con il DataSet

Spesso c'è la necessità di estrarre una riga a caso da un file XML. Lo script di oggi consente di specificare un file ed un nodo tra cui estrarre a caso i relativi nodi, sotto forma di DataRow.
Per l'esempio si è scelto l'utilizzo del DataSet, che consente un rapido caricamento di un file XML sotto forma di DataTable, DataRows e DataColumns.

<%@Import namespace="System.Data"%>
<SCRIPT RUNAT="SERVER" LANGUAGE="C#">

void Page_Load()
{
  DataRow dr = GetRandom(Server.MapPath("feed.xml"), "item");

  // mostro a video tutte le colonne ed i rispettivi valori

  for (int i=0; i<dr.Table.Columns.Count; i++)
    Response.Write("<li>" + dr.Table.Columns[i].ToString() + ": " + dr[i].ToString());
}

DataRow GetRandom(string path, string item)
{
  // carico il file XML

  DataSet ds = new DataSet();
  ds.ReadXml(path);

  // estraggo  un nodo a caso tra quelli presenti

  Random rnd = new Random();
  return ds.Tables[item].Rows[rnd.Next(0, ds.Tables[item].Rows.Count)];
}

</SCRIPT>


Approfondimenti

Commenti

Esprimi il tuo giudizio su questo script:

Per procedere devi essere autenticato.

MichyLee scrive:
#653 - Estrarre un nodo a caso da un file XML con il DataSet

Buonasera Daniele, ti scrivo per avere una info riguardo questo script, per favore.E' un ottimo esempio che ho trovato molto utile e che penso possa ...
domenica 22 ottobre 2006 | 1 risposta

Aggiungi un nuovo commento »»»
Per inserire un commento, devi registrarti alla nostra community.




IN EVIDENZA
MISC