Почему я получаю _Lambda $ __ 2 в качестве имени метода, используя отражение - PullRequest
1 голос
/ 29 сентября 2011

Я использую отражение, чтобы получить имя функции. Все было хорошо, и теперь вместо того, чтобы получать имя функции (например, SendEmail), я получаю Lambda $ _2 в качестве имени функции.

Кажется, ничего не изменилось в коде, который изменил бы это. У меня такое же поведение в другом месте в проекте, и это все еще работает нормально.

Мой код:

Private _sendEmailDel As Zeta.Bol.SendEmailDel (this is a delegate sub)

_sendEmailDel = AddressOf Zeta.Bol.SendEmail

dim methName as string = _sendEmailDel.Method.Name

Zeta.Bol.SendEmail - нормальная функция (без лямбды).

1 Ответ

4 голосов
/ 29 сентября 2011

Это потому, что вы пытаетесь получить имя вашего делегата, а не исходную функцию.Поскольку вы объявили делегата анонимно, компилятор сгенерирует для него автоматическое имя.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...