Bonjour,

Dés le début d'un projet me retrouver confronter à un problème
J'ai créé un fichier web.sitemap qui contient un <siteMap> et des <siteMapNode>...
Dans ma Page Maitre j'ai placé un SiteMapDataSource relié à un TreeView.
Je vois l'arborescence précisé dans le fichier web.sitemap dans mon application.
C'est chouette!

Maintenant je dois faire apparaître ou cacher des noeuds en fonction des différents services des utilisateurs... et je vois les "Roles" à porter de main qui pourraient sans doute m'aider et j'ai créé un rôle (avec la configuration ASP.NET).
Enfin, comment faire car toute ma partie connection est réalisée sans les <asp:Login>, <asp:LoginView>, etc. tout est dans le code.
J'ai un petit paquet de tables à parcourrir pour identifier un utilisateur et l'affecter à un service.
Pour l'instant son service est dans une variable Session.

Dans mon fichier Default.aspx.cs :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
Session["type_acces"] = "SERVICE_A";
Roles.AddUserToRole(retour_permission.Code, "SERVICE_A");
Dans mon fichier web.sitemap :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
<siteMapNode url="" title="Menu" roles="SERVICE_A">
Dans le fichier Web.Config :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
    <siteMap defaultProvider="XmlSiteMapProvider" enabled="true">
      <providers>
        <add name="XmlSiteMapProvider"
          description="Default SiteMap provider."
          type="System.Web.XmlSiteMapProvider"
          siteMapFile="web.sitemap"
          securityTrimmingEnabled="true" />
      </providers>
    </siteMap>
Avec cela : plus aucun noeud n'apparaît.

Pardon pour la longueur du message, mais j'ai essayé tenter de vous donner un maximum d'infos sur le point où j'en suis du premier coup.

Puissez-vous me venir en aide??

Michel