3

私は Web ページの URL ルーティングに取り組んでいます。番号が等しい2つのルートURLが必要です。パラメータ、同じパターンと同じ URL ですが、ルート名が異なります。私のルートは以下です。

Routes.MapPageRoute("Route1", "{parameter1}/{parameter2}", "packages.aspx");
Routes.MapPageRoute("Route2", "{parameter1}/{parameter2}", "destination.aspx", false, null, null,new RouteValueDictionary { { "isDestination", "yes"} });

仮想パス データを呼び出すと、グローバル ファイルの上に書かれた URL にのみリダイレクトされます。

 VirtualPathData vpd =RouteTable.Routes.GetVirtualPath(null,
               "Route1",
               "parameter1", "parameter2");

VirtualPathData vpd =RouteTable.Routes.GetVirtualPath(null,
               "Route2",
              "parameter1", "parameter2");

Route1 の Vpd リターン ルート。2 つの異なるページの両方の URL を作成するにはどうすればよいですか?

4

1 に答える 1

1

最初のオプション:ルート制約を使用して、特定のルートに一致するブラウザー要求を制限します。正規表現を使用してルート制約を指定できます。

2番目のオプション:定数パラメーターを使用して、同じ数とタイプのパラメーターを持つルートを区別できます。

例えば。:

Routes.MapPageRoute("Route1", "packages/{parameter1}/{parameter2}", "packages.aspx");
Routes.MapPageRoute("Route2", "destination/{parameter1}/{parameter2}", "destination.aspx", false, null, null,new RouteValueDictionary { { "isDestination", "yes"} });
于 2013-02-01T07:55:42.203 に答える