CA1025: Zastąp powtarzające się argumenty tabelą parametrów
TypeName |
ReplaceRepetitiveArgumentsWithParamsArray |
CheckId |
CA1025 |
Kategoria |
Microsoft.Design |
Złamanie zmiany |
Bez podziału |
Przyczyna
Metody publiczne lub chronione w publicznych typ ma więcej niż trzy parametry i jego trzy ostatnie parametry są tego samego typu.
Opis reguły
Przy Tablica parametru zamiast argumentów powtarzających się dokładna liczba argumentów jest nieznany i zmiennymi argumentami są tego samego typu, lub mogą być przekazywane jako tego samego typu.Na przykład WriteLine metoda zapewnia przeciążenie ogólnego przeznaczenia, używający Tablica parametru do akceptowania dowolnej liczby Object argumentów.
Jak naprawić naruszenia
Aby naprawić naruszenie tej zasady, zastąpić powtarzających się argumentów tablica parametru.
Kiedy do pomijania ostrzeżenia
Jest zawsze bezpieczne pomija ostrzeżenia, od tej zasady; Jednakże ten projekt może spowodować problemy użyteczność.
Przykład
Poniższy przykład pokazuje typ, który narusza tej reguły.
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) {}
}
}