J'ai problème suivant: (C#)Accès objet « auto » dans la fermeture
Il y a une classe (bot IRC), qui a méthode, qui a besoin de résultat d'un événement pour complet (à travers elle pourrait être asynchrone).
Peut-être pas clair:
// simplified
class IRC
{
void DoSomeCommand()
{
OnListOfPeopleEvent += new Delegate(EventData e) {
if (e.IsForMe)
{
ReturnToUserSomeData();
// THIS IS WHAT I NEED
OnListOfPeopleEvent -= THIS DELEGATE;
}
}
TakeListOfPeopleFromIrc();
}
}
Et je veux supprimer ce délégué quand il la fonction est terminée. Y a-t-il un moyen d'obtenir la référence à la fermeture en elle-même?
J'ai trouvé cette solution comme un hack, mais suffisante pour moi. Merci. (Le nettoyeur serait une solution qui ne dépend pas de la variable explicitement nommée :)) – nothrow
Si vous ne nommez pas la variable, vous devrez nommer la méthode à la place, et gérer tout le transfert d'état ... –