MVCコントローラのアクションは、そのパラメータ(null/emptyと特定の文字列)に対して特定の値で呼び出す必要があります。ヒットしない(ほとんど404)。私は以下のようにRegexRouteConstraintを使ってみました。しかし、それは特定の文字列をフィルタリングしません。MVCコントローラのアクションは特定のパラメータ値のみを処理する必要があります(他の場合は404)
var route = new Route("{soortAanbod}", new MvcRouteHandler())
{
Defaults = new RouteValueDictionary(new { controller = "Homepage", action = "Index", soortAanbod = UrlParameter.Optional }),
Constraints = new RouteValueDictionary(new { soortAanbod = new RegexRouteConstraint("a|b|c|d|e") }),
DataTokens = new RouteValueDictionary { { "area", context.AreaName } }
};
context.Routes.Add("Homepage_soortAanbod", route);
コントローラは次のようになります。public ActionResult Index(string soortAanbod)
私はまた、アクションフィルタを使用してみましたが、それは他の他のフィルタを台無しに。どのようにすれば、このルートはsoortAanbodの指定された値にのみ一致させることができますか?
これが特定のアクションである場合は、コード – cdie
でアクション内で直接処理する選択肢があります。同じ制約を使用するアクションはいくつかあります。コードはオプションですが、むしろun-MVCです – mnwsmit