Comment puis-je créer une méthode avec des paramètres optionnels et des paramètres ensemble?C# 4.0, les paramètres optionnels et les paramètres ne fonctionnent pas ensemble
static void Main(string[] args)
{
TestOptional("A",C: "D", "E");//this will not build
TestOptional("A",C: "D"); //this does work , but i can only set 1 param
Console.ReadLine();
}
public static void TestOptional(string A, int B = 0, params string[] C)
{
Console.WriteLine(A);
Console.WriteLine(B);
Console.WriteLine(C.Count());
}
Oui, c'est la seule façon d'accomplir ce que le PO demande que je sache. Je ne pense pas que ce soit nécessairement mauvais. Juste crée un peu plus de code mais c'est assez simple pour ne pas être déroutant. – jlafay
En outre, cela ne fonctionne pas pour les attributs d'informations de l'appelant de méthode, tels que [[CallerMemberName] '. –
C'est possible, voir ma réponse ci-dessous – katbyte