I want to add optional parameters in my routing table.
For example I would like the users to browse a product catalog like this:
http://www.domain.com/browse/by-category/electronics/1,2,3 etc
Now i’ve created a route like this:
routes.MapPageRoute(
"ProductsBrowse",
"browse/{BrowseBy}/{Category}",
"~/Pages/Products/Browse.aspx"
);
Problem however is that when a user enters http://www.domain.com/browse , I would like them to present a different page where they can pick the manner on how to browse. So the parameters {BrowseBy} and {Category} will not be used.
Is there a way around this then to create seperate routes for each of the scenarios?
Thank you for your time!
Kind regards,
Mark
I’d just create the separate route.
That said, you could define a custom RouteHandler that based on some convention you define, automatically send those special cases as if you had a different route.
Alternatively you could use the custom RouteHandler along with a convention, to avoid having to specify the specific page in your routes. That’s the equivalent of what asp.net MVC does.