Wellington
Wellington

Reputation: 398

Dealing ASP.net Routes with n slashes using regex

I need to use a URL like this:

http://mydomain.com/Box/Categ1/Categ2/Categ3/.../CategN/id1,id2,id3,...,idN

Then I tried to create a new route this way...

routes.MapRoute(
    "Box",
    "Box/{data}",
    new { controller = "Box", action = "Index"},
    new { data = @"([a-zA-Z0-9-,]+/?)+" }
);

But it just doesn't work. If I use any char instead of "/" (slashes) it works fine. Is it possible to use the slashes? I really would like see the URL like this.

Upvotes: 5

Views: 528

Answers (1)

womp
womp

Reputation: 116987

If you want to set the data variable to everything that comes after Box, just use the catch-all parameter.

routes.MapRoute(
    "Box",
    "Box/{*data}",
    new { controller = "Box", action = "Index"}
);

Upvotes: 11

Related Questions