ASP0022:检测到路由处理程序之间存在路由冲突

规则 ID ASP0022
类别 使用情况
修复是中断修复还是非中断修复 非中断

原因

一个 HTTP 请求与多个路由匹配,导致“匹配不明确”错误。

规则说明

当检测到路由冲突时,会发出此诊断。

如何解决冲突

若要解决此规则的冲突,请更改路由模式、HTTP 方法或路由约束。

何时禁止显示警告

不禁止显示此规则发出的警告。

说明

ASP0023 提醒 ASP.NET Core MVC 应用中存在路由冲突,此分析器提醒最小 API 应用中存在路由冲突。

此分析器有意对它报告的重复路由采取保守态度,以避免误报:

  • 此分析器仅报告方法中的同一代码块中声明的重复路由。 不会报告 if 语句的不同分支中的重复路由,因为分析器无法静态确定在运行时将使用哪个路由。
  • 分析器仅报告具有已知元数据的重复路由。 在路由处理程序上调用的未知方法可能会添加新的元数据,然后该元数据被用来自定义路由的匹配方式。