2010-02-25 2 views
1

Merci d'avoir suggéré suggestion dans search dataset from xml file pour utiliser Xpath au lieu du jeu de données comme dans mon post précédent. J'ai réussi à filtrer mes données XML (voir la publication précédente) en utilisant xpath mais maintenant j'ai besoin d'afficher des données dans une table. Comment puis-je faire cela? Je devrais afficher certaines valeurs. Comment puis-je choisir les nœuds que je veux et les afficher?Comment puis-je afficher des données XML dans un tableau HTML

Dim xdoc As New XPathDocument(xt) 
    Dim nav As XPathNavigator = xdoc.CreateNavigator() 

    Dim expr As XPathExpression = nav.Compile("pf:CONTRACTS/pf:CONTRACT[contains(pf:KEYWORDS,'" word "')]") 

    Dim tr As String = Nothing 
    Dim namespaceManager As XmlNamespaceManager = New XmlNamespaceManager(nav.NameTable) 
    namespaceManager.AddNamespace("pf", "http://namespace.co.uk/") 
    expr.SetContext(namespaceManager) 
    Dim nodes As XPathNodeIterator = nav.Select(expr) 

     While nodes.MoveNext() 
    'I would need to have "Contact ID", "Contract Name", etc.   
     tr += "<tr><td>" & nodes.Current.Value & "</td><td></td><td></td><td></td></tr>" 
    End While 
      Dim th As String = "<th>Commodity</th><th>Name</th><th>Supplier</th><th>Name</th>" 
    div1.InnerHtml = ("<table class='datatable1'>" & th) + tr & "</table>" 
+1

Aussi, vous pourriez vouloir repenser toute votre approche. Créer une sortie HTML via une concaténation de chaînes dans ASP.NET est faux sur tant de niveaux ... – Tomalak

+0

analyser le xml comme un xdocument/xdocument puis utiliser xslt pour faire la transformation - avoir une lecture sur xsl, je suis très positif que vous pouvez le faire . – Haroon

+0

Avez-vous utilisé xslt à la fin? –

Répondre

0

Utilisez XSLT pour transformer XML à tout autre XML (y compris HTML).

Questions connexes