Domanda

il mio sito ha molti molti percorsi. dal momento che gli utenti possono aggiungere o rimuovere le pagine a volontà, ho bisogno di un modo per registrare nuovamente i percorsi di volta in volta

a Registrare nuovamente non voglio cancellare l'intera cache percorso ( "RouteTable.Routes.Clear"), ma avrei preferito passare attraverso il percorso tavolo per via, e con una certa espressione regolare sul suo nome, a decidere se per rimuovere o no.

dopo che io registrare nuovamente le pagine specifiche che ho bisogno di

Heres il mio codice nel frattempo

        For Each r In RouteTable.Routes
            If CType(r, Route).DataTokens("ConfigID") = ConfigID Then RouteTable.Routes.Remove(r)
        Next

dopo il primo elimina genera un errore "Collection è stato modificato;. L'operazione di enumerazione non può eseguire"

la ringrazio molto per il vostro aiuto !!

È stato utile?

Soluzione

Non è possibile ottenere il nome della rotta del percorso perché il nome non è una proprietà della Strada. Quando si aggiunge rotte per la RouteTable, il nome viene utilizzato come indice interno per la rotta e non è mai esposto.

C'è un modo per farlo.

  1. Al momento della registrazione di un percorso, impostare un DataToken sul percorso con il nome della rotta e l'uso che per le rotte di filtro.

Il modo più semplice per fare 1 # è probabilmente quello di scrivere i propri metodi di estensione per i percorsi di mappatura.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top