Visual Studioでは、型、文字列形式、および構文スタイルを変換するためのいくつかのリファクタリングが提供されます。 これらのリファクタリングには、[クイック アクションとリファクタリング] メニュー (Ctrl+.
匿名型をクラスに変換する
Applies to: C#, Visual Basic
このリファクタリングでは、匿名型を名前付きクラスに変換します。コードが大きくなり、型に基づいて構築を続ける場合に便利です。
匿名型にカーソルを置く。
Ctrl+. キーを押して、[クイック アクションとリファクタリング] メニューをトリガーします。
リファクタリングを受け入れる には、Enter キー を押します。
匿名型をタプルに変換する
Applies to: C#, Visual Basic
このリファクタリングでは、より軽量な構文のために匿名型をタプルに変換します。
匿名型にカーソルを置く。
Ctrl+. キーを押して、[クイック アクションとリファクタリング] メニューをトリガーします。
リファクタリングを受け入れる には、Enter キー を押します。
通常の文字列リテラルと逐語的文字列リテラルの間で変換する
適用対象: C#
このリファクタリングでは、通常の文字列リテラルと逐語的な文字列リテラルの間で変換されます。 通常の文字列に変換するとスペースを節約できますが、逐語的な文字列に変換すると、より明確になります。
通常の文字列または逐語的な文字列リテラルのいずれかにキャレットを配置します。
Ctrl+. キーを押して、[クイック アクションとリファクタリング] メニューをトリガーします。
次のいずれかのオプションを選択してください。
[ 通常の文字列に変換] を選択します。
[ 逐語的な文字列に変換] を選択します。
typeof を nameof に変換する
Applies to: C#, Visual Basic
このリファクタリングでは、typeof(<QualifiedType>).Name を C# では nameof(<QualifiedType>) に変換し、Visual Basic では GetType(<QualifiedType>).Name を NameOf(<QualifiedType>) に変換します。
nameofを使用すると、type オブジェクトの取得に関連するリフレクションを回避できます。
C# の
typeof(<QualifiedType>).Nameインスタンス内、または Visual Basic のGetType(<QualifiedType>).Name内にカーソルを置く。Ctrl+. キーを押して、[クイック アクションとリファクタリング] メニューをトリガーします。
次のいずれかのオプションを選択します。
C#
convert 'typeof' を 'nameof':!['typeof' から 'nameof' への変換が選択されたVisual Studioの [クイック アクションとリファクタリング] メニューのスクリーンショット、C# コードの変更が表示されます。](media/convert-type-of.png?view=visualstudio)
Visual Basic
['GetType' を 'NameOf':
var の代わりに明示的な型を使用する
適用対象: C#
このリファクタリングにより、ローカル変数宣言の var が明示的な型に置き換えられ、読みやすさが向上します。 ただし、 変数 が匿名型で初期化され、オブジェクトのプロパティが後でアクセスされる場合は、var を使用する必要があります。 詳細については、「 暗黙的に型指定されたローカル変数 (C#)」を参照してください。
キャレットを
varキーワードに配置します。Ctrl キー+押すか、コード ファイルの余白にある
をクリックします。
[ 明示的な型を使用] を選択します。 または、[ 変更のプレビュー ] を選択して [ 変更のプレビュー ] ダイアログを開き、[ 適用] を選択します。
文字列補間を簡略化する
Applies to: C#, Visual Basic
このリファクタリングにより、より明確で簡潔な構文を得るための 文字列補間 式が簡略化されます。
キャレットを文字列補間に配置します。
Ctrl+. キーを押して、[クイック アクションとリファクタリング] メニューをトリガーします。
[ 補間の簡略化] を選択します。