using System.Reflection.Emit; internal class Program { private static void Main() { DynamicMethod add = new("Add", typeof(int), [typeof(int), typeof(int)]); ILGenerator generator = add.GetILGenerator(); generator.Emit(OpCodes.Ldarg_0); generator.Emit(OpCodes.Ldarg_1); generator.Emit(OpCodes.Add); generator.Emit(OpCodes.Ret); var c = add.Invoke(null, [2, 1]) as int?; Console.WriteLine($"2 + 1 = {c}"); } }