Как предотвратить предупреждение StyleCop о венгерской нотации, когда префикс действителен
У меня есть следующий код:
var fxRate = new FxRate();
который дает мне следующее предупреждение StyleCop ReSharper:
Имя переменной 'fxRate' начинается с префикса, который выглядит как венгерская нотация.
Я попытался скопировать файл Settings.StyleCop в папку с моим решением и добавить запись для fx:
<Analyzers>
<Analyzer AnalyzerId="StyleCop.CSharp.NamingRules">
<AnalyzerSettings>
<CollectionProperty Name="Hungarian">
...
<Value>fx</Value>
...
Я перезапустил VS, но я все еще получаю то же предупреждение. Я использую расширение StyleCop ReSharper в VS2017.
Как мне убедиться, что 'fx' является действительным префиксом в решении (для всех членов команды)?
2 ответа
Я обновил ReSharper до 2018.2.1 и теперь значения в файле:
<CollectionProperty Name="Hungarian">
...
<Value>fx</Value>
...
получают успешно признаны. Это делает предупреждение уйти.
Я не уверен, было ли это само обновление или что-то вроде очистки кэша.
Я использую VisualStudio 2017 с ReSharper 2018.2 и соответствующим расширением StyleCop от JetBrains (версия 2018.2.0 - StyleCop.ReSharper.dll 5.0.6329.1)
В наших проектах я добавил Settings.StyleCop
файл в папке решения рядом с файлом решения. Чтобы проверить ваш префикс я добавил fx
в мой файл настроек, и он работал из коробки.
Мой файл содержит следующее правило анализатора.
<Analyzer AnalyzerId="StyleCop.CSharp.NamingRules">
<Rules>
<Rule Name="FieldNamesMustNotUseHungarianNotation">
<RuleSettings>
<BooleanProperty Name="Enabled">True</BooleanProperty>
</RuleSettings>
</Rule>
</Rules>
<AnalyzerSettings>
<CollectionProperty Name="Hungarian">
...
<Value>fx</Value>
..
</CollectionProperty>
</AnalyzerSettings>
И моя конфигурация Resharper выглядит так:
Как мне убедиться, что 'fx' является действительным префиксом в решении для всех членов команды)?
В наших проектах мы всегда проверяем файл настроек StyleCop, поэтому мы гарантируем, что все участники используют правильный вариант, и мы можем поддерживать его в актуальном состоянии для всех.
В дополнение к плагину ReSharper вы также можете использовать пакет StyleCop, находящийся в магазине NuGet, и добавить его в свое решение:
Команда StyleCop рекомендует использовать StyleCopAnalyzers над расширением StyleCop при использовании VisualStudio 2015 и более поздних версий.