C # /. NET / FxCop!
... в классе я хочу, чтобы FxCop заткнулся, жалуясь на
Warning CA1062 : Microsoft.Design :
In externally visible method 'xyz', validate parameter 'a' before using it.
По сути, это правило предполагает, что я ставлю if (a == null) throw new ArgumentNullException("a");
в начале почти каждого метода в моем коде. Это отстой и изменяет логику обработки исключений.
Итак, я поместил это куда-то в тело моего класса:
[SuppressMessage("Microsoft.Design", "CA1062:Validate arguments of public methods",
Scope = "Type",
MessageId = "0",
Justification = "We love danger... so far.")]
В любом случае, это даже не подавляет ни одного сообщения - я все еще получаю все эти предупреждения. Оно подавляет предупреждение только в том случае, если оно стоит прямо над одним из определений ошибочных методов (т. Е. Оно подавляет только одно предупреждение, не все этого типа). Странно то, что тот же синтаксис работает для других проблем, которые встречаются в моем классе несколько раз.
Я не знаю, что я делаю неправильно, и, честно говоря, я действительно не понимаю, как использовать параметры атрибута. http://msdn.microsoft.com/de-de/library/ms244717.aspx не слишком вдавается в детали. : T ... в любом случае, есть идеи, что не так?