私は、スタイルの警官が出しているコードにいくつかのインスタンスがあります。スタイル違反の特定のインスタンスを無視する方法
"SA1119:行に不要なカッコが含まれています。私のような、より複雑なものがあるとき
int someValue = (((12 + 3) + 5));
は、しかし:
textXpos = ((((float)this.Width - imageoffset) - textsize.Width)/2);
を私はこれを書き換えることができることを理解し、私が言うのコードの行を持っている場合
今、私は完全にこれに同意しますlike:
textXpos = (((float)this.Width - imageoffset - textsize.Width)/2);
そして、同じ値に評価されますが、私は最初の1つは読みやすい。 styecopにこのエラーのインスタンスを無視するよう指示する方法はありますか?
または、これを回避するには、式の一部を一時変数に代入する必要がありますか?
私はこのコードセクションを評価するためにスタイルの警官が欲しいので、自動生成された領域にこのコードをラップしたくありません。
using System.Diagnostics.CodeAnalysis;
:ken2kでの提案に基づいて
おかげ
は、私は、次の試してみました。 。 。
[SuppressMessage("StyleCop.CSharp.MaintainabilityRules", "SA1119:StatementMustNotUseUnnecessaryParenthesis", Justification = "Better for readability.")]
public int Testmethod()
{
int returnValue = (((5 - 5) - 5)/2);
return returnValue;
}
しかし、これは効果がないようですか?何か不足していますか?
外括弧について配っされるかもしれないことを私に起こったことはありません! D'oh – AidanO
はい、私はここで同じ問題を抱えています。私はStylecopチームが "Microsoft"の文字列を取り除いたと思ったが、明らかにそうではなかった。更新された回答をご覧ください。 – ken2k
あなたの答えは「StyleCop 4.3にバグがあり、4.4にアップグレードする必要がありました。ありがとう。 – AidanO