3

私は古典的なasp.net Webサイトを書いていて、問題に苦しんでいます。

通常、次のようにして URL でデータを送信します: localhost/MyrandomPage.aspx?UserName=RandomUsername

しかし、私はページをより個人的なものにしようとしているので、URL を次のようにしたいと考えています。

localhost.com/Profile/RandomUsername

そして、URLのスラッシュの後にRandomUserNameを取得する方法を見つけることができません。

完了しました ルーティング:

    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.MapPageRoute("",
            "/Pages/{UserName}",
            "~/Pages/Profile.aspx");
    }

しかし、どうすればUserNameを取得できますか??

4

2 に答える 2

2

ルーティング スキームが正しく、すべてが機能していると仮定すると、リクエスト コンテキストからルート値 (この場合は「アクション」) を取得できます。

string userName = (string) requestContext.RouteData.Values["UserName"]; 
于 2012-10-19T21:57:04.883 に答える
2

を使用して取得できるはずです Page.RouteData.Values["UserName"] as string

Scott Gu は、Web フォームでのルーティングについて説明した優れたブログ投稿を行っています。

于 2012-10-19T21:58:19.597 に答える