0

私は .Net 4.0 フレームワークを使用しており、いくつかの URL ルーティングを行っています。これは MVC プロジェクトではなく、webforms プロジェクトです。次のように Global.asax に 2 つのルートを作成しました。

        routes.MapPageRoute(
           "review",      // Route name
           "documents/{type}",      // Route URL
           "~/default.aspx" // Web page to handle route
        );

        routes.MapPageRoute(
           "help",      // Route name
           "resource/help",      // Route URL
           "~/help.aspx" // Web page to handle route
        );

「ドキュメント/保留中」などのサイト ナビゲーションのリンクをクリックすると、適切な場所に移動し、予想される URL が表示されます。「document/accepted」をもう一度クリックすると、URL は次のようになります。

http://localhost/documents/documents/accepted

また、ページが見つからず、レンダリングされません。ヘルプ リンクをクリックしてからドキュメントをクリックしても、同じことが起こります。URL は次のようになります。

http://localhost/resource/documents/pending

ルーティングで URL が連結されるのはなぜですか? どうすればこれを修正できますか?

前もって感謝します

4

1 に答える 1

0

The problem's to do with how your URLs are being resolved. For ways to guarantee your URLs are always resolved correctly see http://msdn.microsoft.com/en-us/library/dd329551.aspx.

Alternatively, I've written a Navigation project that will make your life much easier because it handles all URL building for you, http://navigation.codeplex.com/ . If you're interested and want any help, just let me know.

于 2012-06-02T17:03:15.370 に答える