Каков был бы допустимый regex для ограничения маршрута MVC, передающего bool? Например, я имею ниже маршрута:
routes.MapRoute("MenuRouteWithExtension",
"Menu.mvc/{action}/{projectId}/{dealerId}/{isGroup}",
new { controller = "Menu", action = "RedirectUrl",
projectId = "", dealerId = "", isGroup = "" }
new { projectId = @"\d+", dealerId = @"\d+", isGroup = @"???" });
В основном я должен знать то, что было бы допустимо вместо??? в вышеупомянутом примере кода.
Таким образом, Действие с другим концом может использовать тип bool как:
public ActionResult RedirectUrl(int projectId, int dealerId, bool isGroup)
Заранее спасибо за Ваш вход.
isGroup = @"^(true|false)$"
Так что ...
routes.MapRoute(
"MenuRouteWithExtension",
"Menu.mvc/{action}/{projectId}/{dealerId}/{isGroup}",
new
{
controller = "Menu",
action = "RedirectUrl",
projectId = "",
dealerId = "",
isGroup = "" //Possibly set this to 'true' or 'false'?
},
new
{
projectId = @"^\d+$",
dealerId = @"^\d+$",
isGroup = "^(true|false)$"
}
);
Корпус не должен иметь значение, поэтому True
должен быть принят, а также false
.
Кроме того, я ставлю ^
и $
на значениях Regex, чтобы они не будут соответствовать, например Blahtrueblah
.