Aggiungi tutto il controllore e il nodo d'azione a mvc.sitemap automaticamente
-
12-12-2019 - |
Domanda
Ho installato MvCsiteMapprovider sulla mia applicazione MVC 3 per il Breadcrumbs Trail.Ha generato automaticamente il seguente nodo in mvc.sitemap.xml
<?xml version="1.0" encoding="utf-8" ?>
<mvcSiteMap xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://mvcsitemap.codeplex.com/schemas/MvcSiteMap-File-3.0"
xsi:schemaLocation="http://mvcsitemap.codeplex.com/schemas/MvcSiteMap-File-3.0 MvcSiteMapSchema.xsd"
enableLocalization="true">
<mvcSiteMapNode title="Home" controller="Home" action="Index">
<mvcSiteMapNode title="About" controller="Home" action="About"/>
</mvcSiteMapNode>
</mvcSiteMap>
.
e segue l'HTML Helper per la visualizzazione del pangrattato
@Html.MvcSiteMap().SiteMapPath()
.
Nella mia applicazione, c'è molto controller e la loro azione frenetica da aggiungere tutto MVCSIteMapnode in MVCSITEMAP di tali azioni e domande è che è possibile elencare tutto il controller e la loro rispettiva azione in MVCSIteMapnode di mvc.sitemap.xmlsenza scrittura manualmente tutto.
Soluzione
Penso che la cosa più vicina sia usare gli attributi sui metodi, vedere https://github.com/maartenba/mvcsitemapprovider/wiki/defining-sitemap-nodes-in-code .Esempio:
// GET: /Checkout/Complete
[MvcSiteMapNodeAttribute(Title = "Checkout complete", ParentKey = "Checkout")]
public ActionResult Complete(int id)
{
// ...
}
. Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow