Sdílet prostřednictvím


ASP0022: Zjištěný konflikt trasy mezi obslužnými prvky tras

Hodnota
Identifikátor pravidla ASP0022
Kategorie Usage
Oprava je destruktivní nebo nedestruktivní Non-breaking

Příčina

Požadavek HTTP odpovídá několika různým trasám, což vede k chybě nejednoznačné shody.

Popis pravidla

Tato diagnostika se vygeneruje při zjištění konfliktu trasy.

Jak opravit porušení

Chcete-li opravit porušení tohoto pravidla, změňte vzor trasy, metodu HTTP nebo omezení tras.

Kdy potlačit upozornění

Nepotlačujte upozornění z tohoto pravidla.

Poznámky

ASP0023 varuje před konflikty tras v aplikacích ASP.NET Core MVC, zatímco tento analyzátor varuje před konflikty tras v aplikacích Minimal API.

Tento analyzátor je záměrně konzervativní ohledně duplicitních tras, které hlásí, aby se zabránilo falešně pozitivním výsledkům:

  • Analyzátor hlásí pouze duplicitní trasy deklarované ve stejném bloku kódu v metodě. Duplicitní trasy v různých větvích příkazu if nejsou hlášeny, protože analyzátor nemůže staticky určit, která z nich bude použita za běhu.
  • Analyzátor hlásí pouze duplicitní trasy se známými metadaty. Neznámé metody volané v obslužné rutině trasy mohou přidat nová metadata, která se následně používají k přizpůsobení způsobu, jakým se trasa shoduje.