Sdílet prostřednictvím


CA1025: Nahraďte opakované argumenty polem parametrů

Název_typu

ReplaceRepetitiveArgumentsWithParamsArray

CheckId

CA1025

Kategorie

Microsoft.design

Změnit rozdělení

Bez rozdělení

Příčina

Veřejné nebo chráněné metody ve veřejné typ má více než tři parametry a její poslední tři parametry jsou stejného typu.

Popis pravidla

Pokud není znám přesný počet argumentů a proměnnými argumenty jsou stejného typu nebo může být předán jako stejný typ, použijte pole parametru namísto opakované argumenty.Například WriteLine metoda poskytuje univerzální přetížení, který používá parametr pole přijmout jakýkoli počet Object argumenty.

Jak opravit porušení

Porušení tohoto pravidla opravíte nahradíte opakované argumenty pole parametru.

Při potlačení upozornění

Je vždy bezpečný potlačí upozornění od tohoto pravidla; Tento návrh však může způsobit problémy použitelnosti.

Příklad

Následující příklad ukazuje typ, který poruší toto pravidlo.

using System;

namespace DesignLibrary
{
   public class BadRepeatArguments
   {
      // Violates rule: ReplaceRepetitiveArgumentsWithParamsArray. 
      public void VariableArguments(object obj1, object obj2, object obj3, object obj4) {}
      public void VariableArguments(object obj1, object obj2, object obj3, object obj4, object obj5) {}
   }

   public class GoodRepeatArguments
   {
       public void VariableArguments(object obj1) {}
       public void VariableArguments(object obj1, object obj2) {}
       public void VariableArguments(object obj1, object obj2, object obj3) {}
       public void VariableArguments(params Object[] arg) {}
   }
}