はじめに

使っている拡張機能とその設定です。
すでに同記事多数ですが、あえてまとめてみます。
お目汚し失礼。

使っているVSCode拡張機能

C#

Microsoft製拡張機能です。
*.csファイルを開くと、「入れましょう」とおすすめされます。
コードハイライト、自動補完、定義へのジャンプ、参照の検索等々の機能があります。
必須です。

C# XML Documentation Comments

///と入力すると、コメントの雛形を出力してくれます。
CodeでないほうのVisual Studioに備わっている機能です。

Code Spell Checker

スペルチェッカーです。英語スペルの間違いを指摘してくれます。
こういうのずっと欲しかった。

C# FixFormat

2019-6-2追記:インスタンス化時に{}が入れ子になっているとインデントが崩れるので、使うのをやめました。

ソースコードをまとめて整形できます。
対象は、括弧、インデント、スペース、改行、usingです。
C#拡張機能では対応していない [] 前後のスペースや、改行した行のインデントに対応しています。
C#拡張機能整形機能とぶつかる部分があるので、以下の設定をしています。


# 開き括弧{を独立行に置きます。
csharpfixformat.style.braces.onSameLine: false
# 開き括弧(前にスペーを出力しません。
csharpfixformat.style.spaces.beforeParenthesis : false

.Net Core Test Explorer

Visual StudioのTestウィンドウと同様のものです。
ソリューション/プロジェクトに含まれているテストを一覧できます。
コード中に[Run Test]リンクが表示されるので、あまり使ってないです。

VSCode 拡張機能以外のもの

StyleCop.Analyzers

C#コンパイラのアナライザに、コーディングスタイルチェックを追加します。
プロジェクトに追加すると、ビルド時に警告が出力されるようになりなす。

設定はxmlファイルとjsonファイルで行います。それぞれできる設定が分かれています。
jsonファイルの内容はこちらで説明されています。
https://github.com/DotNetAnalyzers/StyleCopAnalyzers/blob/master/documentation/Configuration.md

以下はxmlファイルの例です。RuleタグにあるId属性は、StyleCop Analyzerが出力するルールのIDです。ここでは2つのルールを無視するようにしています。

code-analyzer.ruleset

<?xml version="1.0" encoding="utf-8"?>
<RuleSet Name="My Analyzer ruleset" ToolsVersion="15.0">
    <IncludeAll Action="Warning" />
    <Rules AnalyzerId="StyleCop.Analyzers" RuleNamespace="StyleCop.Analyzers">
        <!-- 一行コメント先頭に要スペース -->
        <Rule Id="SA1005" Action="None" />
        <!-- 呼び出し時要this -->
        <Rule Id="SA1101" Action="None" />
    </Rules>
</RuleSet>

jsonファイルの例です。

stylecop.json

{
  "$schema": "https://raw.githubusercontent.com/DotNetAnalyzers/StyleCopAnalyzers/master/StyleCop.Analyzers/StyleCop.Analyzers/Settings/stylecop.schema.json",
  "settings": {}
}

ファイルを作成したら、csprojファイルを編集して参照するようにします。

  <PropertyGroup>
    <CodeAnalysisRuleSet>code-analyzer.ruleset</CodeAnalysisRuleSet>
  </PropertyGroup>

  <ItemGroup>
    <AdditionalFiles Include="stylecop.json" Link="stylecop.json" />
  </ItemGroup>