FxCop хочет, чтобы я произносил имя пользователя с капиталом N (например, UserName) из-за того, что он был составным словом. Однако из-за причин непротиворечивости нам нужно записать его в нижнем регистре n - так что либо имя пользователя, либо имя пользователя.
Я попытался настроить CodeAnalysisDictionary.xml, добавив в раздел следующий раздел:
<DiscreteExceptions>
<Term>username</Term>
</DiscreteExceptions>
Из того, что я понимаю, как работают пользовательские словари, это должно указывать FxCop для обработки имени пользователя как дискретного термина и предотвращения проверки CompoundWordsShouldBeCasedCorrectly (CA1702), чтобы вызвать ошибку.
К сожалению, это не сработает. Кто-нибудь есть идея, почему это так и как это решить? Я не хочу добавлять подавления, потому что это серьезно загромождает файл GlobalSuppressions, так как есть много вхождений.
Отредактировано для добавления: пока я решил это с помощью GlobalSuppressions, но, учитывая характер проблемы, это не похоже на идеальный способ решить эту проблему. Может ли кто-нибудь дать подсказку о том, где искать дополнительную информацию о том, как FxCop применяет правила, определенные в словаре?