Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Asp.net 3.5 Controllo menu voci selettive

    Ciao mi sono appena iscritto a questo forum.

    ho un controllo menu' di ASPNET collegato ad un file XML.
    come faccio a disabilitare le singole voci nel file XML?

    Posso attingere i dati da un database access invece che da un file XML?

    Grazie a tutti

  2. #2
    per eliminare una singola volce da un menu puoi usare il PreRender

    nel prerender fai una scansione delle voci con un semplice ciclo While

    esempio ( da verificare gli errori di battitura)

    codice:
           ' calcolo quante voci ci sono nel menu
    Dim Totale =  menu1.items.count -1
    
    Dim i As Integer = 0 
    
           ' il ciclo è attivo fino a quanto non si Raggiunge il valore Totale 
    While i <= Totale
    
           'estraggo il testo dalla singola voce del menu
    Dim Testo as string
    testo = Menu1.Items(i).text
    
           ' confronto il testo del menu con quello da eliminare
    If testo =  MIACodizione   Then
    
          'verifico la presenza di sottomenu e li elimino
    Dim SubMenu As Integer = Menu1.Items(i).ChildItems.Count - 1
    
    Dim j As Integer = 0
    
    While j <= SubMenu
         Menu1.Items(i).ChildItems.RemoveAt(0)
          j += 1
    End While
                    'elimino il menu
                    Menu1.Items.Remove(ss)
                    i = i - 1
    ' reimposto il  totale delle voci di menu dopo l'eliminazione
    Totale = Totale - 1 
    
    End If
    
    Next
    ps. il codice originale fu preso dalla rete. io l'ho solo modificato e commentato

    ciao
    Delfino Cobalto

  3. #3
    ciao, cosa intendi per disabilitare le singole voci?
    In base all'utente? in base a cosa?

    Il sitemap solitamente è con XML, ma puoi trovare in rete anche un provider per crearlo con DB.
    leggi questo e trovi le risorse:
    http://forums.asp.net/t/1042144.aspx/1

  4. #4
    la questione è questa.
    ho un menu con diverse voci da abilitare o disabilitare in fuzione dei privilegi dell'utente o di eventi definiti dall'admin ( restrizioni forzate)

    Sono alle prese con il codice di Delfino..... ma sono interessato a utiliizare un DB invece che con un XML

    grazie

  5. #5
    se è proprio necessario il DB
    http://msdn.microsoft.com/en-us/magazine/cc163657.aspx
    http://weblogs.asp.net/scottgu/archi...11/435108.aspx

    comunque utilizzando il file .setemap, puoi gestire molto semplicementente i permessi di accesso lavorando con i ruoli del tuo web.
    esempio:

    codice:
        <siteMapNode roles="ViewSales"  title="Sales" url="~/Administration/SalesHome.aspx" IconUrl="~/Administration/Common/ico-sales.png" description="Sales Home" nopResourceTitle="Admin.Sitemap.SalesHomeTitle" nopResourceDescription="Admin.Sitemap.SalesHomeDescription" >
          <siteMapNode roles="ManageOrders"  title="Orders" url="~/Administration/Orders.aspx" description="Manage Customer Orders" nopResourceTitle="Admin.Sitemap.OrdersTitle" nopResourceDescription="Admin.Sitemap.OrdersDescription" />
          <siteMapNode roles="*"  title="Recurring Payments" url="~/Administration/RecurringPayments.aspx" description="Manage Recurring Payments" nopResourceTitle="Admin.Sitemap.RecurringPaymentsTitle" nopResourceDescription="Admin.Sitemap.RecurringPaymentsDescription" />
          <siteMapNode roles="ManageGiftCards"  title="Purchased Gift Cards" url="~/Administration/PurchasedGiftCards.aspx" description="Manage Purchased Gift Cards" nopResourceTitle="Admin.Sitemap.PurchasedGiftCardsTitle" nopResourceDescription="Admin.Sitemap.PurchasedGiftCardsDescription" />
          <siteMapNode roles="*"  title="Sales Report" url="~/Administration/SalesReport.aspx" description="View Sales Report" nopResourceTitle="Admin.Sitemap.SalesReportTitle" nopResourceDescription="Admin.Sitemap.SalesReportDescription" />
        </siteMapNode>
    vedi che
    il menu "Sales" lo vede solo chi ha il permesso "ViewSales"
    il menu "Orders" lo vede solo chi ha il permesso "ManageOrders"
    e così via.

    Devi solo farti una tabella dei permessi ed abilitarli per utente o per ruolo
    Cerca su internet come creare una lista "ACL" per un sito web.
    oppure da un'occhiata qui:
    Managing Authorization Using ASP.NET Roles
    Creating and Managing Roles
    How To: Use Role Manager in ASP.NET 2.0

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.