2

既存のASP.NETWebFormsサイト内でURLルーティングを使用しようとしています。おかげで:このリンク、私はそれを機能させました。現在、ルーティングと一緒にSiteMapを使用しようとしています。

MyReport.aspxページがあります。これはサイトマップにあり、ページに直接アクセスすると正常に機能します。/ report / {param1}/{param2}のルートを追加しました。サイトマップが/report/ {param1} / {param2}ではなくルートパス(MyReport.aspx)を解決することを期待していましたが、サイコロはありませんでした。

MVCでSiteMapを使用する例を見てきましたが、これはコントローラーなどがあることを前提としています。これらはいずれも標準のWebフォームには存在しません。

私が今試しているアプローチは、カスタムSiteMapProvider内の実際のページを取得することですが、これを行う方法がわかりません。HttpContextからURLの代わりに実際のASPXページを取得する方法はありますか?

ありがとう、-ダミアン

4

1 に答える 1

0

ダミアン-私は最近、役に立つかもしれないサンプルを投稿しました。「asp.netルーティングサイトマップ」をグーグルで検索すると、そこに到達するはずです(SOに参加したばかりなので、まだリンクを投稿できません)。

Fyiでは、カスタムSiteMapProviderを作成する代わりにSiteMap.SiteMapResolveイベントを使用できます(少なくとも単純なシナリオの場合)。

それが役に立てば幸い!

于 2009-05-20T05:03:46.800 に答える