Probleme avec sitemap crée dynamiquement
Hello,
J'ai un souci avec mon siteMap source de mon treeview.
Je crée un string XML contenant mon siteMap crée sur base d'une DB sqlserver.
Tout fonctionne bien, gros problème, c'est qu'au lieu d'avoir en titre de menu le title de mon sitemap et en lien, l'url j'ai le mot siteMapNode qui s'affiche partout.
Pourriez-vous m'aider merci?
voici mon code
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
Private Function buildXMLMenu(ByRef oDataSet As DataSet) As String
'Dim parentNode As TreeNode
' Dim childNode As TreeNode
Dim sortSubMenu As String
sortSubMenu = "LevelOrder ASC"
Dim selectSubMenu As String
Dim navigateString As StringBuilder = New StringBuilder()
' En-tete du fichier Site Map File
navigateString.Append("<?xml version=""1.0"" encoding=""utf-8"" ?>")
navigateString.Append("<siteMap xmlns=""http://schemas.microsoft.com/AspNet/SiteMap-File-1.0"">")
For Each parentRows As DataRow In oDataSet.Tables("Menu").Select("MenuLevel = 0", sortSubMenu)
selectSubMenu = "UpperLevel = " & parentRows.Item("ID").ToString
' création du sous-menu si existant
If oDataSet.Tables("Menu").Select(selectSubMenu, sortSubMenu).Length > 0 Then
' menu parent avec menu enfant
navigateString.Append("<siteMapNode title=""" & parentRows.Item("libla") & """>")
For Each childRows As DataRow In oDataSet.Tables("Menu").Select(selectSubMenu, sortSubMenu)
navigateString.Append("<siteMapNode url=""" & childRows.Item("MenuAction") & """ title=""" & childRows.Item("libla") & """ />")
Next
navigateString.Append("</siteMapNode>")
Else
' Menu parent sans menu enfant
navigateString.Append("<siteMapNode url=""" & parentRows.Item("MenuAction") & """ title=""" & parentRows.Item("libla") & """ />")
End If
Next
navigateString.Append("</siteMap>")
buildXMLMenu = navigateString.ToString
End Function |
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
Private Sub buildMenu()
' fonction pour attribuer au menu les informations récupérée par l'objet createMenu sous forme XML
Dim menuDataSource As XmlDataSource = New XmlDataSource()
menuDataSource.ID = "MainMenu"
menuDataSource.Data = Session("siteMapMenu")
menuDataSource.DataBind()
mnuPerso.DataSource = menuDataSource
mnuPerso.DataBind()
End Sub |