共用方式為


ASP0022:偵測到路由處理程序間的路由衝突

價值觀
規則識別碼 ASP0022
類別 Usage
修正是破壞性或非破壞性 Non-breaking

原因

HTTP 請求會匹配多條路由,導致歧義匹配錯誤。

規則描述

當偵測到路由衝突時,會發出此診斷訊號。

如何修正違規

若要修正違反此規則,請更改路由模式、HTTP 方法或路由限制。

隱藏警告的時機

請勿隱藏此規則的警告。

註釋

ASP0023 用於警告 ASP.NET Core MVC 應用程式中的路由衝突,而這個分析器則用於警告 最小 API 應用程式中的路由衝突。

此分析器在報告重複路由時採取保守的方法,以避免誤判:

  • 分析器只會回報在同一程式碼區塊中宣告的重複路由。 不同分支 if 的重複路由不會被報告,因為分析器無法靜態判斷執行時會使用哪條路由。
  • 分析器只會回報具有已知元資料的重複路由。 未知方法在路由處理程式中被呼叫時,可能會新增元資料,而這些元資料隨後可用來調整路由的匹配方式。