«Ключевое слово 'this' недопустимо в статическом свойстве, статическом методе, или инициализатор статического поля »при добавлении методов в ExpandoObject

Я пытаюсь добавить к ExpandoObject динамический метод, который возвращал бы свойства (добавленные динамически) к нему, однако он всегда выдает ошибку.

Я что-то делаю здесь не так?

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Dynamic;

namespace DynamicDemo
{
class ExpandoFun
{
    public static void Main()
    {
        Console.WriteLine("Fun with Expandos...");
        dynamic student = new ExpandoObject();
        student.FirstName = "John";
        student.LastName = "Doe";
        student.Introduction=new Action(()=>
      Console.WriteLine("Hello my name is {0} {1}",this.FirstName,this.LastName);
    );

        Console.WriteLine(student.FirstName);
        student.Introduction();
    }
}
}

Компилятор отмечает следующую ошибку: Ошибка 1

Ключевое слово 'this' недействительно в статическое свойство, статический метод или инициализатор статического поля

D: \ rnd \ GettingStarted \ DynamicDemo \ ExpandoFun.cs 20 63 DynamicDemo

9
задан Robert Harvey 20 December 2014 в 20:12
поделиться