問題タブ [stylecop]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
348 参照

c# - VS2010 で WinForms (C#) デザイナーを使用すると、StyleCop が不平を言うコードが生成されます

私が覚えているいくつかの問題(もっとあるかもしれません):

  1. 地域を含む
  2. this.メンバー変数とメソッドにプレフィックスを使用しない
  3. 以下のようなコメントが含まれています (//それ自体が StyleCop の目に留まります)

    /li>

テキストに変更を加えてからもう一度デザイナーを開いて、以前に完成させた重労働の成果を台無しにするとします。この問題をどのように解決しましたか/解決しますか?

聞いたことがありますが、WPF で同様の問題を個人的に経験したことはありません。どうやってそれを修正しましたか?

ありがとう。

0 投票する
3 に答える
7201 参照

c# - ディレクティブ、名前空間、およびアセンブリ参照の使用 - すべて StyleCop でごちゃ混ぜに!

コードをわかりやすくするために、StyleCop の書式設定規則に従うのが好きですが、最近、次の警告の 1 つに問題がありました。

すべての using ディレクティブは、名前空間内に配置する必要があります。

私の問題は、ディレクティブ、アセンブリ参照 (ファイルの削除をモックするため)、および名前空間を使用して、テスト クラスの 1 つでジャグリングしていることです。

上記により、テストを正常に実行できますが、StyleCop は using ディレクティブが名前空間内にないことについて不平を言います。

usings を名前空間内に配置すると、「MoledType」が認識されないというエラーが発生します。

using とアセンブリ参照の両方を名前空間内に配置すると、エラーが発生します

「アセンブリ」は、この宣言の有効な属性の場所ではありません。この宣言の有効な属性の場所は「type」です。このブロックのすべての属性は無視されます。

できる限りすべてのレイアウトを試しましたが、役に立たなかったようです-ソリューションが構築されないか、モックが機能しないか、StyleCopが文句を言います!

すべてが幸せになるようにこれらを設定する方法を知っている人はいますか? または、この場合、StyleCop の警告を無視する必要がありますか?

0 投票する
4 に答える
5477 参照

asp.net-mvc - ASP.NET MVC コントローラーのコメント

私は Stylecop の大ファンで、常にガイドラインに従っています。また、コメントはコードに付加価値をもたらし、コードが行っていることを繰り返さないというガイドラインにも従っています。

ASP.NET MVC コントローラーとそれに関連するアクションに関するコメントのガイドラインに従うのに少し問題があります。アクションやコントローラーに関するコメントについて考えることができません。

HomeControllerデフォルトとデフォルトのアクションを想定してみましょうIndex。これは私が使用しているコメントですが、付加価値があるとは思えません。

付加価値を提供し、コメントの有用性を高めるには、コントローラーとそのアクションでどのスタイルのコメントを使用する必要がありますか? すでに使用したコメントは何ですか?

0 投票する
1 に答える
2509 参照

c# - XDocument / XElement/XAttributeを使用したStyleCopによるXmlの幸せな作成

次のフォーマットを使用してxmlを作成するのが好きです。

読みやすく、タブ付きのXMLドキュメントのように流れます(私の意見では)。ただし、StyleCopはフォーマットに非常に不満を持っています。これらのエラーがたくさん発生します。

SA1116:メソッドパラメータが別々の行にある場合、最初のパラメータはメソッド名の下の行から開始する必要があります。

SA1118:パラメータが複数行にまたがっています。パラメータが短い場合は、パラメータ全体を1行に配置します。それ以外の場合は、パラメーターの内容を一時変数に保存し、一時変数をパラメーターとして渡します。

StyleCopを満足させ、コードを読みやすくするために何ができますか?StyleCopルールを無効にできることは知っていますが、チームはXML以外のすべての作成コードに対してそれらのルールを保持したいと考えています。この方法でXMLを作成するすべてのメソッドでルールを選択的に抑制することができますが、それは苦痛のように思え、醜くなります。助言がありますか?

0 投票する
5 に答える
2690 参照

c# - 可変スコープの目的でブレースを使用するのは間違っていますか?

後で誤って変数を使用するのを避けるために、中かっこを使用してコード ブロックを分離することがあります。たとえばSqlCommand、同じメソッドに複数の を配置するときは、コード ブロックを頻繁にコピーして貼り付け、最後に名前を混ぜ合わせていくつかのコマンドを 2 回実行します。中括弧を追加すると、この状況を回避するのに役立ちSqlCommandます。間違った場所で間違ったものを使用するとエラーが発生するためです。以下に図を示します。

これで、StyleCop はブロックが空の行に続くたびに警告を表示します。一方、空行を入れないと、コードが理解しにくくなります。

そう、

  1. 可変スコープの目的のためだけに中括弧を使用してコードのブロックを作成することに何か問題がありますか?

  2. よろしければ、StyleCop の規則に違反せずに読みやすくするにはどうすればよいでしょうか?

0 投票する
1 に答える
1674 参照

sql-server - SQL Serverと同等のStyleCop?

SQL Server用のStyleCopのようなツールはありますか?
StyleCopと同じ機能が必要です(一連のスタイルと一貫性のルールを適用します)。

[追加機能]:SQLServerManagementStudioとの統合はすばらしいでしょう。

0 投票する
6 に答える
5919 参照

.net - Styleco の設定が役に立たなくなり、煩わしくなり始めるのはどの時点ですか?

私は、StyleCop で広範なルールセットを使用するチームで働いていますが、そのようなツールが役に立たなくなり、煩わしくなる一般的な点についてどう考えているのだろうかと思っています。また、GhostDoc を使用しているため、コードは XML コメントで埋め尽くされており、コードが読みにくく、レビューが困難になっています。私は XML コメントに問題はなく、場所によっては非常に便利だと思いますが、すべてのフィールドとプロパティで本当に必要なのでしょうか?

「各プロジェクトは、ビルド時に警告が 0 でなければならない」という立派な目標がありますが、この目標は妥当な StyleCop ルールセットに反するものでなければなりません。

これについてどう思いますか?

EDIT 私は今、実際にstylecop AT ALLのようなツールの議論は何なのか疑問に思っています? それを捨てて、賢明なコーディング標準と優れたコードレビューに残りを任せてみませんか? 特に有能なチームでは?確かに、すべての警告が関連するため、0 の警告を取得するタスクは実際に価値を追加します。

GhostDoc の唯一の利点は、XML コメントをゼロから作成するのに必要な数秒を節約できることだと思います。生成されたコメントを編集せずに受け入れる必要はないと思います-これはおそらく非生産的です。

これは、Stylecop ルール (SA1642: ConstructorSummaryDocumentationMustBeginWithStandardText) が GhostDoc によって生成された xml コメントによって満たされている組み合わせです - 一日の終わりに値を追加しますか?

0 投票する
6 に答える
4932 参照

c# - CA1500対SA1309-どちらが勝ちますか?

コード分​​析とStyleCopの両方がガイドラインとして意図されており、多くの人がとにかくこれらを無視することを選択したことを理解していることを前に付けます。しかし、そうは言っても、これら2つのルールに関する一般的なコンセンサスが何であるかを確認したいと思います。

ルールCA1500では、パラメータ名とプライベートフィールド名を同じにしないでください。

一方、ルールSA1309では、メンバーの前にアンダースコアまたは「m_」を付けないでください。

これにより、プライベートバッキングフィールドを対応するパラメータから区別するためのオプションがほとんどなくなります。これらの例を見てください。

SA1309は文句を言います:

CA1500は文句を言います:

どのようなオプションがありますか?プライベートバッキングフィールドをPascalCaseにしたくありません。これは、パブリックフィールド/プロパティの(かなり普遍的な)規則だからです。そして、あいまいさを解決するためだけに、どちらか一方の名前を変更したくありません。

したがって、上記の2つのうちのいずれかが残っているため、SA/CAルールの1つを抑制する必要があります。

あなたたちは通常何をしますか?さらに重要なことに、これらのルールの作成者は、あなたが何をすべきだと考えていますか(どちらもドキュメントに代替ソリューションを提供していないため)?

0 投票する
7 に答える
300 参照

c# - 大きすぎるファイルを変更するには (StyleCop から警告を受けました)?

StyleCop によるファイルに関する警告を受け取りました。

  • 警告 1 CR0005: ファイルが 508 行と非常に長いです。500行以下にするリファクタリングを検討してください。

  • 警告 2 CR0002: メソッドが長すぎます。長さは 58 行です。50 行以下にするリファクタリングを検討してください。

皆さんはどのようにコードを変更していますか? このためのベストプラクティスは何ですか? コードをより小さなものに分割する考えがありません。コードが非常に複雑になることを恐れています。

だから、助けてください^_^!

ナム。

0 投票する
12 に答える
58441 参照

c# - StyleCop 警告を抑制する方法は?

私は StyleCop を使用しており、私のスタイルに合わない警告を抑制したいと考えています。私は解決策を持っていることを好みます

1) インライン コードの抑制
2) グローバル設定の抑制

私はインターネットを検索しましたが、抑制を行う方法がまだわかりません。

方法 1) の場合、次の行を追加するように言われました。

[アセンブリ: SuppressMessage("Microsoft.Design", "SA1202: すべてのプライベート メソッドは、すべてのパブリック メソッドの後に配置する必要があります", スコープ = "名前空間", ターゲット = "Consus.Client.ClientVaultModule.Services.OnlineDetection")]

しかし、どこでどの名前空間を使用するかについては言及されていません。

2) の方法については、GlobalSuppress ファイルを使用するとのことでしたが、現在、その方法を探すのは簡単ではないようです。

助けてください。

[編集済み] 私の場合、SA1202 に関する警告があります。関連するコードをリージョンにグループ化しているため、すべてのパブリック メソッドの後にすべてのプライベート メソッドを配置する必要があります。特定のメソッドについてのみ、これらの警告を抑制したいと思います。