向ExpandoObjects添加方法

Mic*_*cah 6 c# dynamic .net-4.0 expandoobject

UPDATE

问题不在于代码,问题是你显然无法从即时窗口评估动态对象.


我正试图解决ExpandoObject的方法,但不知道如何让它工作.这是我的代码:

dynamic myObj = new ExpandoObject();
myObj.First = "Micah";
myObj.Last = "Martin";
myObj.AsString = new Func<string>(() => myObj.First + " " + myObj.Last);

//No matter what I do I get 'object' does not contain a definition for 'AsString'
myObj.AsString;
myObj.AsString();
myObj.AsString.Invoke();
Run Code Online (Sandbox Code Playgroud)

有人知道怎么做吗?

Jus*_*ner 9

您确定包含所有代码吗?

我刚测试并运行以下内容并成功:

dynamic obj = new ExpandoObject();

obj.First = "Hello";
obj.Last = "World!";

obj.AsString = new Func<string>(() => obj.First + " " + obj.Last);

// Displays "Hello World!"
Console.WriteLine(obj.AsString());
Run Code Online (Sandbox Code Playgroud)