Ну, вы используете this
в лямбде, который будет ссылаться на объект, который создает Action
. Вы не можете сделать это, потому что у вас статический метод.
Даже если бы вы работали с методом экземпляра, он не работал бы с this
, потому что он ссылался бы на экземпляр объекта, создающего Action
, а не ExpandoObject
, где вы его скрываете. *
Вам необходимо сослаться на ExpandoObject (студент):
student.Introduction=new Action(()=>
Console.WriteLine("Hello my name is {0} {1}",student.FirstName,student.LastName);
);