Как разобрать исходный код C# для генерации кодов операций IL, которые могут использоваться в DynamicMethod?Исправить IL OpCodes из исходного кода C#
Я хочу выполнить код динамически, не создавая ненужных сборок. Что-то вроде этого:
var body = "return \"sample\";";
var dm = new DynamicMethod("method_" + Guid.NewGuid().ToString("N"), typeof(string), null);
var parser = new SomeKindOfCSharpParser();
parser.Emit(body, m.GetILGenerator());
Вы используете C# 5? Если это так, вы все настроены. Если нет, можете ли вы использовать Mono? – Gabe
Кроме того, в зависимости от того, насколько строго вам нужно, вы можете уйти с CSharpCodeProvider с GenerateInMemory = false –
@Gabe C# 4. Могу использовать Mono. Я нашел хороший проект NRefactory, но мне все еще нужно реализовать Emit логику самостоятельно. Раньше я не работал с Моно. Я что-то упустил? – lorond