ASP.NET routing with a NOT equal to constraint
I have a route like so:
routes.MapRoute
(
"Profile",
"profile/{username}",
new { controller = "Profile", action = "Index" },
new { username = @"^(getmoreactivity)" }
);
This works fine for all users but I have a situation where I want to hit an action for getmoreactivity. So I want to make this constraint to say when username is NOT getmoreactivity. I开发者_Python百科t's just not working though.
I've stuck on the RouteDebugger and tried @"[^(getmoreactivity)]" @"^^(getmoreactivity)" @"^getmoreactivity" @"[^getmoreactivity]". Well I've tried countless things but none solve my problem.
How the hell do you put in a NOT constraint on a whole word?
try:
routes.MapRoute
(
"Profile",
"profile/{username}",
new { controller = "Profile", action = "Index" },
new { username = "(?!getmoreactivity).*" }
);
?!
is a lookahead: http://www.regular-expressions.info/refadv.html
......
精彩评论