/ / Czy MVC SiteMap 2.0 obsługuje niestandardowe atrybuty? - asp.net-mvc, atrybuty, sitemap, mvcsitemap

Czy MVC SiteMap 2.0 obsługuje niestandardowe atrybuty? - asp.net-mvc, atrybuty, sitemap, mvcsitemap

Używam v2.0 z Mapa strony MVC projekt.

Z System.Web.XmlSiteMapProvider w webformach, często zapisywałem atrybuty niestandardowe na węzłach i uzyskiwałem dostęp do nich za pośrednictwem kolekcji Attributes []. Jest to bardzo przydatne do tworzenia niestandardowych kolekcji węzłów, które mają wspólny atrybut.

Mapa witryny MVC nie wydaje się obsługiwać niestandardowychatrybuty. Czy to jest poprawne? Jeśli nie, czy ktoś może zaproponować dobry sposób identyfikacji węzłów w mojej mapie witryny, które powinny być uważane za "podstawową" nawigację?


Edytować:

Powinienem wyjaśnić, jak wyglądają atrybuty "nie"Jeśli dodasz atrybut niestandardowy, na przykład isPrimary = "true" do mojego węzła głównego, moja właściwość SiteMap.CurrentNode ma zawsze wartość NULL, jednak właściwość SiteMap.RootNode jest dobrze wypełniona. Jakieś pomysły?


Dalsza edycja:

Biorąc pod uwagę, że dodane zostaną dodatkowe atrybutydodane do RouteData, czy istnieje sposób dodania atrybutu do węzła, który nie jest w żaden sposób powiązany z trasą? Myślę o arbitralnym parametrze, który mogę wykorzystać do identyfikacji pewnych węzłów.

Odpowiedzi:

2 dla odpowiedzi № 1

Działa to dobrze w najnowszej wersji dostawcy. Po prostu przetestuj to używając najnowszego kodu źródłowego i demo MVC Music Site.

Jestem pewien, że to zawsze działało. Wszystkie metody AddNode () wywołują metody base.AddNode, które dodadzą dowolne atrybuty.

Aktualizacja:

Próbowałem twojego przykładu, działa dobrze. Kiedy przetestowałem to faktycznie debugowałem na SiteMap.Provider.CurrentNode i tam były niestandardowe atrybuty. Może to błąd, spróbuj najnowszą kroplę?