我有这样的路线:网页API路由约束元组
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{tenantParam1}/{tenantParam2}/{controller}/{id},
constraints: ???,
defaults: new { id = RouteParameter.Optional }
);
对于tenantParam1和tenantParam2,我需要这样只有值的某些元组被允许约束它们。有没有办法做到这一点?
编辑:为了澄清,重要的是我需要将tenantParam1和tenantParam2作为一个元组来评估。举例来说,可以说这是我的合法租户:
param1 | param2
ABC | 123
ABC | 456
DEF | 789
DEF | 012
这将意味着以下途径是有效的:
/api/ABC/123
/api/ABC/456
/api/DEF/789
/api/DEF/012
但以下途径都无效:
/api/ABC/789
/api/ABC/012
/api/DEF/123
/api/DEF/456
链路只回答不喜欢,但我不会粘贴整个后在这里,所以只需阅读:https://chsakell.com/2013/10/13/web-api-custom-routing-constraints/ –
谢谢,但这似乎只包含单个参数的自定义约束。我需要将两个参数一起约束为一个元组。 – ConditionRacer