Udostępnij za pośrednictwem


CA1059: Elementy członkowskie nie powinny uwidaczniać pewnych typów konkretnych

Pozycja Wartość
Ruleid CA1059
Kategoria Microsoft.Design
Zmiana powodująca niezgodność Kluczowa

Przyczyna

Zewnętrznie widoczny element członkowski jest określonym typem betonowym lub uwidacznia określone typy betonu za pomocą jednego z jego parametrów lub wartości zwracanej. Obecnie ta reguła zgłasza ekspozycję następujących konkretnych typów:

Uwaga

Ta reguła została przestarzała. Aby uzyskać więcej informacji, zobacz Przestarzałe reguły.

Opis reguły

Konkretny typ jest typem posiadającym pełną implementację i dlatego może zostać utworzone jego wystąpienie. Aby umożliwić powszechne użycie elementu członkowskiego, zastąp typ betonu sugerowanym interfejsem. Dzięki temu element członkowski może zaakceptować dowolny typ implementujący interfejs lub używany w przypadku, gdy oczekiwany jest typ implementujący interfejs.

W poniższej tabeli wymieniono docelowe typy betonu i sugerowane zamienniki.

Typ betonu Zastąpienie
XPathDocument System.Xml.XPath.IXPathNavigable.

Użycie interfejsu rozdziela element członkowski z określonej implementacji źródła danych XML.

Jak naprawić naruszenia

Aby naprawić naruszenie tej reguły, zmień konkretny typ na sugerowany interfejs.

Kiedy pomijać ostrzeżenia

Można bezpiecznie pominąć komunikat z tej reguły, jeśli jest wymagana określona funkcjonalność dostarczana przez konkretny typ.

CA1011: Rozważ przekazanie typów podstawowych jako parametrów