質問

System.web.Routingを使用してURLがマッピングされるWebFormsページ名ではなく、仮想URLを取得するにはどうすればよいですか。

url "/cundile/5"が必要で、「confirm.aspx」ではありません。

役に立ちましたか?

解決

ルーティングされたURLを取得します 現在訪問しているページの場合, 、 使用する Request.Url, 、パベルがノートしているように。

別のページのルーティングURLを取得する必要がある場合(別のページにハイパーリンクを作成するときなど)、 Page.GetRouteUrl 方法。

これが使用を示すコードスニペットです Page.GetRouteUrl. 。それは私の記事からです、 ASP.NET 4のURLルーティング:

lnkcategory.navigateurl = page.getRouteurl( "View Category"、new {categoryName = "Beverages"});

上記のスニペットでは、「ビューカテゴリ」は、使用したいルーティングルールの名前です。 CategoryName ルーティングパラメーターの1つであり、値「Beverages」を使用したいと考えています。上記の呼び出し Page.GetRouteUrl 文字列「/カテゴリ/ビバレッジ」を返します。 (もちろん、正確な文字列はリターンです。ルーティングルール「表示カテゴリ」とパラメーター値に依存しますが、できればアイデアが得られます。)

他のヒント

以下を試してください: System.Web.HttpContext.Current.Request.Url.AbsolutePath

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top