ASP.NET 2.0 mette a disposizione dei nuovi controlli, chiamati DataSourceControls, per astrarre l'oggetto che visualizza i dati rispetto alla sorgente da cui questi provengono. Tra questi nuovi controlli c'è l'XmlDataSource che permette il Binding tra un oggetto ed una fonte dati XML. Questo controllo introduce una nuova sintassi XPath per decidere quali campi visualizzare.
Prendiamo ad esempio questo file XML:
<?xml version="1.0" encoding="utf-8" ?> <Root> <ordine> <data>28/11/2005</data> <importo>100.34</importo> <cliente>Pluto</cliente> </ordine> <ordine> <data>29/11/2005</data> <importo>200.34</importo> <cliente>Pippo</cliente> </ordine> <ordine> <data>30/11/2005</data> <importo>300.34</importo> <cliente>Paperino</cliente> </ordine> <ordine> <data>27/11/2005</data> <importo>400.34</importo> <cliente>Paperoga</cliente> </ordine> </Root> Possiamo visualizzare tutti gli ordini in un Repeater scegliendo i campi tramite l'espressione di binding: <%#XPath("NomeCampo")%>
Ecco l'esempio:
<form id="form1" runat="server"> <asp:XmlDataSource ID="DataSource" runat="server" DataFile="App_Data\Source1.xml" XPath="/Root/ordine"></asp:XmlDataSource> <asp:Repeater ID="repeater" runat="server" DataSourceID="DataSource"> <HeaderTemplate> <table> <tr> <td>Data</td> <td>Importo</td> <td>Cliente</td> </tr> </HeaderTemplate> <ItemTemplate> <tr> <td><%#XPath("data")%></td> <td><%#XPath("importo")%></td> <td><%#XPath("cliente")%></td> </tr> </ItemTemplate> <FooterTemplate> </table> </FooterTemplate> </asp:Repeater> </form>
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
I più letti di oggi
- Effettuare il log delle chiamate a function di GPT in ASP.NET Web API
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Utilizzare il metodo CountBy di LINQ per semplificare raggruppamenti e i conteggi
- Eseguire script pre e post esecuzione di un workflow di GitHub
- Creare una libreria CSS universale: Cards
- Migliorare l'organizzazione delle risorse con Azure Policy