Как получить номер источника / строки для инструкции IL, используя Mono.Cecil

Я использую Mono.Cecil для написания простой утилиты, которая ищет использование типов / методов в сборках.NET (например, вызывает ToString для перечислений).

Я могу найти метод, но было бы здорово показать пользователю информацию об источнике / строке. Это возможно с Mono.Cecil?

1 ответ

Решение

Это возможно. Сначала вы должны прочитать руководство из вики Mono.Cecil об отладке символов.

Убедитесь, что у вас есть Mono.Cecil.Pdb.dll рядом с Mono.Cecil.dll, установите ReaderParameters для чтения символов, как указано в руководстве, а затем инструкции, у которых есть точка последовательности в файле pdb, получат свои SequencePoint свойство не нулевое, с доступной информацией о строке. Document собственность SequencePoint содержит имя исходного файла.

Другие вопросы по тегам