ASP0022:检测到路由处理程序之间存在路由冲突
值 | |
---|---|
规则 ID | ASP0022 |
类别 | 使用情况 |
修复是中断修复还是非中断修复 | 非中断 |
原因
一个 HTTP 请求与多个路由匹配,导致“匹配不明确”错误。
规则说明
当检测到路由冲突时,会发出此诊断。
如何解决冲突
若要解决此规则的冲突,请更改路由模式、HTTP 方法或路由约束。
何时禁止显示警告
不禁止显示此规则发出的警告。
说明
ASP0023 提醒 ASP.NET Core MVC 应用中存在路由冲突,此分析器提醒最小 API 应用中存在路由冲突。
此分析器有意对它报告的重复路由采取保守态度,以避免误报:
- 此分析器仅报告方法中的同一代码块中声明的重复路由。 不会报告
if
语句的不同分支中的重复路由,因为分析器无法静态确定在运行时将使用哪个路由。 - 分析器仅报告具有已知元数据的重复路由。 在路由处理程序上调用的未知方法可能会添加新的元数据,然后该元数据被用来自定义路由的匹配方式。