Peut être ceci est une question stupide mais: Je me demande s'il y a quelque chose comme le paramètre par défaut mais pas par la valeur - mais par le nom.C# paramètre par défaut par le nom est-ce possible?
Exemple:
Je dois utiliser un paramètre « pilote IWebDriver » dans un grand nombre de mes méthodes. Et je sais que toujours quand je l'utilise j'utiliserai le nom "driver" - l'objet derrière le nom peut être différent (IE, FF, Chrome ..) mais le nom sera toujours le même.
Ainsi est-il possible d'avoir une fonction
public void CheckName(string nameToCheck, string expectedValue, IWebDriver driver = driver with name "driver")
{
some code....
}
Et quand je l'utilise pas faire:
CheckName("MyName", "MyName", driver)
mais à faire:
CheckName("MyName", "MyName")
... et la méthode sait qu'il faut obtenir l'objet avec le nom (string) "driver".
Si je veux utiliser un autre nom que par défaut juste pour préciser:
CheckName("MyName", "MyName", driverOtherName)
Ajouter un tas de surcharges? –
D'où la méthode obtiendra l'objet pilote si vous ne voulez pas le passer explicitement? Pouvez-vous fournir plus d'informations? –
Si je comprends bien votre question, vous voulez vérifier le nom de la variable qui stocke votre valeur de paramètre (facultatif). Et non, ce n'est pas possible. Les noms de variables (devraient) n'ont absolument aucune signification pour votre code, ils pourraient être n'importe quoi. –