0

パンくずリスト用の MVC 3 アプリケーションに MVCSitemapProvider をインストールしました。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>

以下は、ブレッドクラムを表示するための HTML ヘルパーです。

  @Html.MvcSiteMap().SiteMapPath()

私のアプリケーションには、多くのコントローラーとそれらのアクションの mvcSiteMapNode にすべての mvcSiteMapNode を追加するのに忙しいアクションがあり、すべてを書き込まずに Mvc.sitemap.xml の mvcSiteMapNode にすべてのコントローラーとそれぞれのアクションをリストすることは可能ですか?手動で。

4

1 に答える 1

1

最も近いのは、メソッドで属性を使用することだと思います。 https://github.com/maartenba/MvcSiteMapProvider/wiki/Defining-sitemap-nodes-in-codeを参照してください。例:

// GET: /Checkout/Complete 
[MvcSiteMapNodeAttribute(Title = "Checkout complete", ParentKey = "Checkout")] 
public ActionResult Complete(int id) 
{ 
  // ... 
}
于 2012-07-28T23:43:59.913 に答える