Traverse aC# метод и аназлые тела метода
Какой самый простой способ пройти methodinfo в C#?
Я хочу обойти тело метода и найти ссылки на поля и тому подобное и получить типы.
В System.Reflection есть:
mi.GetMethodBody().GetILAsByteArray()
что-то вроде низкого уровня и потребует "некоторой" работы, прежде чем я смогу пересечь тело.
Я знаю, что Сесил существует, но есть проблема при загрузке сборки в памяти с помощью Сесила. Сборка, с которой я работаю, не всегда "на диске", это может быть сборка в памяти, скомпилированная, например. Бу, и я не буду чистым решением без записи временной сборки на диск.
Какие еще есть альтернативы для этого?
1 ответ
Решение
Эта вещь должна помочь: основанный на отражении читатель CIL. Он работает с байтовым массивом, полученным путем вызова GetILAsByteArray()