Ограничение Маршрута MVC для bool

Каков был бы допустимый 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)

Заранее спасибо за Ваш вход.

6
задан Pure.Krome 31 August 2011 в 02:22
поделиться

1 ответ

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 .

17
ответ дан 8 December 2019 в 13:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: