7
votes

Comment éviter de répéter "objet.method ()" en C #?

Je dois appliquer une méthode à un objet en C # mais je dois le faire plusieurs fois xxx

vous obtenez le point ... La chose est que je sais qu'il y a un moyen de Évitez cela et simplement le mettre comme ceci: xxx

mais je ne me souviens pas si c'est correct en C #, je l'ai vu dans un autre langage de programmation bien que je ne me souvienne pas de C'est la bonne façon de le faire.


4 commentaires

Pouvez-vous poster la méthode "setgrade"?


Un setgrades (90 100,70) est-il suffisant?


Terme de recherche que vous recherchez est "Interface fluide". LINQ (C #) et JQuery (JavaScript) sont des exemples de ce type de chaînage.


Également appelé idiome "cascade". Simplement renvoie ce ou son équivalent dans une langue que vous souhaitez l'utiliser.


6 Réponses :


9
votes

avoir juste avoir setgrade code> retour Ceci code>.

public Student SetGrade(int grade) {
    this.Grade = grade;
    return this;
}


0 commentaires

11
votes

Pourquoi ne pas ajouter les valeurs que vous souhaitez définir dans un tableau, puis utilisez-la pour appeler .Setgrade? XXX


0 commentaires

3
votes

Ceci devrait être possible lorsque Setgrade () renvoie une instance de soi ou lorsque vous écrivez une méthode d'extension appelée Setgrade () (pour la classe) qui renvoie une instance d'elle-même.

stud1.SetGrade(90)
 .SetGrade(100)
 .SetGrade(70);


0 commentaires


0
votes

Ceci peut prendre n em> Nombre de valeurs.

SetGrade(90, 100, 70);


0 commentaires

0
votes

Si vous n'avez pas accès à la classe (ou en tant qu'exercice), vous pouvez également écrire une extension avec le mot-clé code> parames code>.

stud1.SetGrades(90, 100, 70, 50);


0 commentaires