Получить MSIL из Ассамблеи? - PullRequest
2 голосов
/ 27 января 2011

Можно ли с пользой извлечь MSIL из объекта Assembly без загрузки информации о типе?

У меня есть простое приложение, которое принимает строку и пытается динамически создать метод для очень быстрых вычислений, но я хочу избежать загрузки информации о сборке / типе с помощью CodeCompileUnit для компиляции строки кода C #, извлечения MSIL из скомпилированной сборки и передачи MSIL в DynamicMethod. Если это возможно.

Ответы [ 3 ]

2 голосов
/ 27 января 2011

Взгляните на Mono.Cecil , который поможет вам читать / изменять / создавать сборки, не загружая их.

1 голос
/ 27 января 2011

Используйте System.Reflection.Emit напрямую. Для динамических методов вам даже не нужен тип.

1 голос
/ 27 января 2011

Единственный способ получить MSIL - это вызвать MethodBase.GetMethodBody Method . Но сначала требуется загрузка типа.

...