我在 .NET 6 (
TemplateMatcher
) 中使用 Microsoft.AspNetCore.Http
手动将字符串与路由模板(例如“{name}/{id:int?}
”)匹配,但我无法让它遵守最后一个参数的类型约束。它似乎认识到它有一个约束并且它是一个可选参数,但结果值字典中的值仍然只是字符串。它还匹配格式不正确的字符串,例如“a/b
”。我只是想让它匹配“a/1
”等。有什么线索吗?我错过了什么吗? .NET 中的其他地方是否有更好的类用于此目的?我想要一些与标准 asp.net 路由工作方式相同的东西。
请参阅 ASP.NET Core 代码库中的 IntRouteConstraintsTests