Эта статья является зеркальной статьёй машинного перевода, пожалуйста, нажмите здесь, чтобы перейти к оригиналу.

Вид: 27740|Ответ: 2

[Источник] .net/C# отражает неанонимные функции <>f__AnonymousType0 методы

[Скопировать ссылку]
Опубликовано 2020-10-16 17:51:42 | | | |
При использовании AOP-очного программирования нужно установить виртуальный метод, чтобы перехватывать метод в обычном режиме. Поскольку существует слишком много способов пропустить виртуальные ключевые слова, используйте рефлексию, чтобы определить, пропустили ли вы ключевые слова. При использовании метода получения отражений <>f__AnonymousType0 получается большое количество анонимных функций, и в данной статье используется метод анонимного исключения отражения для получения всех методов всех объектов, наследующих общий базовый класс, а текст включает версии .NET и .NET Core.

C# Анонимный дневник обучения
https://www.itsvse.com/thread-9417-1-1.html


Сначала возьмите текущую сборку

Версия .NET:



Версия для .NET Core:



Базовый класс, унаследованный объектом сервиса



Невиртуальный метод отражания

Когда вы получите все сборки и все методы с помощью рефлексии, вы можете получить анонимный метод AnonymousType, как показано на рисунке ниже:



.NET-версия



Версия для .NET Core



Определите, является ли это анонимной функцией



Пространство имён и тип DeclaringType анонимных функций являются null, а пространство имён неанонимных функций не должно быть null!




Предыдущий:C# Анонимный дневник обучения
Следующий:Отладка .NET-программ с помощью блокнота дома на компьютере в течение десяти лет
 Хозяин| Опубликовано 16.10.2020 18:02:10 |
Когда вы получите все объекты ассемблера, вы обнаружите анонимные объекты, сгенерированные компилятором +<>c
Свойства CompilerGeneratedAttribute могут использоваться для различия объектов, сгенерированных компилятором

Код таков:


 Хозяин| Опубликовано 2024-5-29 11:18:39 |
Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com