1

私は MvcSiteMapProvider 3.3.3.0 を使用しており、MvcSiteMap.sitemap次のように定義された 2 つのノードを含むファイルがあります。

<mvcSiteMapNode title="Node1" controller="MyController" action="MyAction" type="A" />
<mvcSiteMapNode title="Node2" controller="MyController" action="MyAction" type="B" />

global.asax.cs のルートは「そのまま」構成されているため、URL は次のとおりです。

Node 1: http://server/MyController/MyAction?type=A
Node 2: http://server/MyController/MyAction?type=B

MenuHelper.GetCurrentNode()ここでノード 2 に移動すると、ノード 1 が返されることがわかります。

これはなぜですか? MvcSiteMapProvider にクエリ文字列パラメーターに基づいて現在のノードを認識させる方法はありますか?

4

2 に答える 2

1

私はこれをテストしていませんが、これは可能だと思います。github リポジトリで wiki をチェックアウトする必要があります。役立つ情報がいくつかありますが、基本的な例がまだいくつかありません。

https://github.com/maartenba/MvcSiteMapProvider/wiki/Dynamic-sitemaps/

于 2012-10-22T07:38:47.923 に答える
0

残念ながら、これを行う方法はありません。カスタムの DynamicNodeProvider を使用してこの問題を回避しましたが、あなたのケースには合わないようです。

于 2012-10-22T07:12:29.923 に答える