ReSharper 2026.1 Help

パラメーター修飾子の追加 / 削除リファクタリング

このリファクタリングにより、コレクション型の最後のパラメーターに params 修飾子を導入することで API を改善できます。

最後の引数として型の配列を受け入れる API の例を考えてみましょう。

public sealed class AcceptsDataAttribute : Attribute { public AcceptsDataAttribute(string description, Type[] types) { } }

このような API は、呼び出しサイトで配列を構築することを消費者に強制します。

public class MyService { [AcceptsData("Flag/text", new[] { typeof(string), typeof(bool) })] public void EntryPoint(object data) { // do something } }

このリファクタリングにより、 Type[] types パラメーターに params 修飾子を追加し、すべての使用を更新することで、この API の人間工学を向上させることができます。

public sealed class AcceptsDataAttribute : Attribute { public AcceptsDataAttribute(string info, Type[] types) { } } public class MyService { [AcceptsData("Flag/text", new[] { typeof(string), typeof(bool) })] public void EntryPoint(object data) { // do something } }
public sealed class AcceptsDataAttribute : Attribute { public AcceptsDataAttribute(string info, params Type[] types) { } } public class MyService { [AcceptsData("Flag/text", typeof(string), typeof(bool))] public void EntryPoint(object data) { // do something } }

'params' 修飾子を追加する

  1. ターゲットメソッドシグネチャー内の任意の場所にキャレットを設定します。

  2. 次のいずれかを実行します。

    • Alt+Enter を押して、 「params」修飾子を追加し、使用箇所を更新する を選択します。

    • Control+Shift+R を押し、を 「params」修飾子を追加し、使用箇所を更新する を選択します。

  3. 競合するものが見つからない場合、ReSharper はすぐにリファクタリングを実行します。 それ以外の場合は、 競合を解決するように求められます。

このリファクタリングでは、 params 修飾子を削除して使用方法を更新することで、逆変換を実行することもできます。 これは、最後の params パラメーターの後に新しいパラメーターを含める必要がある場合に役立ちます。

この機能は、次の言語とテクノロジーで サポートされています。

言語: C#

言語: VB.NET

言語: C++

言語: ASP.NET

言語: Razor

言語: XAML

言語: Resx

言語: スクリプトの作成

言語: SQL

この機能は C# で利用可能です

この機能は Visual Basic で利用可能です

この機能は C++ では使用できません

この機能は ASP.NET では使用できません

この機能は Razor では使用できません

機能は XAML では使用できません

機能はリソースファイルでは使用できません

機能はビルドスクリプトファイルでは使用できません

機能は SQL/NoSQL ファイルおよびインジェクションでは利用できません

ここで説明する手順と例では、C# の機能の使用について説明します。 他の言語の詳細については、 言語およびフレームワーク セクションの対応するトピックを参照してください。

2026 年 6 月 12 日