多言語 Web サイトでわかりやすい URL をサポートするために MapPageRoute (ASP.NET 4) を使用しています。
MapPageRoute で定義されているものと一緒に、追加のパラメーターを渡すことができるようにしたいと考えています。
上記の例では、URL に従って要求された言語を決定する必要があります (「Accessories」の場合、ページは英語である必要があり、「Accessoires」の場合 - ページはフランス語である必要があります):
routes.MapPageRoute(
"Accessory fr",
"Accessoires/{accessory_name}",
"~/Accessory.aspx?lang=fr"
);
routes.MapPageRoute(
"Accessory en",
"Accessories/{accessory_name}",
"~/Accessory.aspx?lang=en"
);
ということで、リクエストされたアクセサリ名は問題なく で読み取れるのですが、パラメータPage.RouteData.Values["accessory_name"]
はどうやって読み取れるのでしょうか?lang
Request["lang"]
要求された結果が得られないため、使用できません。なんとなく、?lang=xx
とれません。
このパラメーターが URL に明示的に見つからないと仮定して、追加のパラメーターを渡すにはどうすればよいですか?