0

すべての URL に pageId を提供する必要がありますが、ユーザーがこの pageId を確認する必要はありません。例えば

http://{domain}/{product-name}/{product-id}/{pageid} <-- I don't want to provide this

私はGlobal.asaxに持っています:

routes.MapPageRoute("route-name", "path/{productName}/{product-id}", "~/ProductPage.aspx");

このルートを設定して、たとえば次のような「ハードコードされた」パラメータ ページ ID を設定する方法はありますか ---

routes.MapPageRoute("route-name", "path/{productName}/{product-id}", "~/ProductPage.aspx?pageid=1");
4

1 に答える 1

0

このルートを設定して、「ハードコードされた」パラメータ ページ ID を持つ方法はありますか

なぜそう...はい、あります。

MapPageRoute には、ルート値の既定のセットを受け入れるオーバーロードがあります。

//Create route and set default values
routes.MapPageRoute(
   "route-name", 
   "path/{productName}/{product-id}", 
   "~/ProductPage.aspx",
   false,
   new RouteValueDictionary{
      {"product-id", 1}
   });

したがって、「product-id」を指定せずにこのルートにヒットすると、常にデフォルトで1

于 2012-11-09T05:14:33.890 に答える