Предупреждение анализа кода Visual Studio 2010 CA1704 для класса с именем MultiString

У меня проблемы с инструментом анализа кода в Visual Studio 2010; У меня есть класс, используемый для управления несколькими строками, поэтому я назвал свой класс MultiString, Когда я запускаю инструмент анализа кода, я получаю предупреждение:

CA1704: Microsoft.Naming: исправьте написание "Multi" в имени типа "MultiString".

Та же проблема возникает, когда используется термин multiString как имя параметра или IsMultiApplicationCard как имя свойства.

Благодаря теме " Анализ кода" - CA1704: исправьте написание "P". Я обнаружил, что термин multi по умолчанию не распознается. Теперь мне интересно, почему (я не носитель языка). Разве не правильное слово multi? Какое слово я должен использовать вместо этого? Или вы бы предложили использовать Multiapplication и Multistring?

2 ответа

Решение

MultiString анализируется с помощью анализа кода в multi, string, которые затем проверяются по словарям. Multi является допустимым префиксом для слова, но не слово само по себе, т.е. multicolored это одно слово, поэтому оно не должно быть написано multi colored, По этой причине стандартный словарь, поставляемый Microsoft в C:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\FxCop\CustomDictionary.xml явно указывает multi как непризнанный; это в свою очередь означает, что добавление Multi Пользовательский словарь неэффективен: Code Analysis все равно отклонит его, но не объяснит, почему ваша словарная статья неэффективна!

Вам лучше всего использовать вариант Multistring (как вы сами отметили); Вторым лучшим будет подавление CA1704 для этого конкретного случая; по-видимому, администратор может отредактировать стандартный словарь, но это потребуется повторять после любых обновлений, и это выглядит довольно грязным трюком.

См. http://msdn.microsoft.com/en-us/library/bb264492.aspx?ppud=4 для получения подробной информации о том, как исправить это "нарушение". "Multi" отсутствует в словаре Microsoft. Вы можете изменить его, скажем, "Multiple"... или добавить "Multi" в пользовательский словарь.

Другие вопросы по тегам