Sdílet prostřednictvím


CA2212: Neoznačujte obsluhované součásti pomocí WebMethod

TypeName

DoNotMarkServicedComponentsWithWebMethod

CheckId

CA2212

Kategorie

Microsoft.Usage

Narušující změna

Narušující

Příčina

Metoda typu, který je odvozen z ServicedComponent, je označena WebMethodAttribute.

Popis pravidla

WebMethodAttribute se týká metod v rámci webové služby XML, které byly vytvořeny pomocí technologie ASP.NET; to umožňuje volat metoda ze vzdálených webových klientů.Metoda a třída musí být veřejné a prováděné ve webové aplikaci technologie ASP.NET.Typy ServicedComponent jsou hostované aplikacemi modelu COM+ a mohou používat služby modelu COM+.WebMethodAttribute se nevztahuje na typy ServicedComponent, protože nejsou určeny pro stejné scénáře.Konkrétně přidání atributu do metody ServicedComponent neumožní volání metody ze vzdálených webových klientů.Protože metoda WebMethodAttribute a ServicedComponent mají konfliktní chování a požadavky na kontext a tok transakcí, bude chování metody v některých případech nesprávné.

Jak vyřešit porušení

Chcete-li napravit porušení tohoto pravidla, odstraňte atribut z metody ServicedComponent.

Kdy potlačit upozornění

Nepotlačujte upozornění na toto pravidlo.Neexistují žádné scénáře, kde je kombinace těchto prvků správná.

Viz také

Referenční dokumentace

ServicedComponent

WebMethodAttribute