Mam klasy jak ten:Analiza kodu VS2010. Tłumić wiadomość CA1051: DoNotDeclareVisibleInstanceFields dla wszystkich członków klasy
public class Foo
{
public readonly int A = 1;
public readonly int B = 2;
}
Kiedy biegnę VS2010 zbudowany w narzędziu Code Analysis, mam identyczne ostrzeżenia: że „pole” ... "jest widoczne poza swoim typem deklaracji, zmienia jego dostępność na prywatny i dodaje właściwość, z taką samą dostępnością, jaka obecnie jest w polu, aby zapewnić dostęp do niej".
chcę tłumić to ostrzeżenie dla wszystkich pól w mojej klasie Foo, ale nie chcę, aby zaznaczyć każde pole z SuppressMessage atrybut tak:
public class Foo
{
[SuppressMessage("Microsoft.Design", "CA1051:DoNotDeclareVisibleInstanceFields")]
public readonly int A = 1;
[SuppressMessage("Microsoft.Design", "CA1051:DoNotDeclareVisibleInstanceFields")]
public readonly int B = 2;
}
Chcę zaznaczyć wszystkie elementy klasy , używając kodu takiego:
[SuppressMessage("Microsoft.Design", "CA1051:DoNotDeclareVisibleInstanceFields")]
public class Foo
{
public readonly int A = 1;
public readonly int B = 2;
}
Ale ten kod nie działa, nadal otrzymuję ostrzeżenie o analizie kodu. Jak zrobić to poprawnie?
I że znalazłeś błąd, opublikuj na connect.microsoft.com –
jakieś ostateczne rozwiązanie na ten temat? – Kiquenet