Expando公司
是一个
dynamic
动态
在与动态类型语言(如Python和JavaScript)交互时,允许.NET与类型进行互操作。
因此,如果需要处理动态类型:使用
动态
如果您需要处理动态数据,如XML或JSON:请使用ExpandoObject
expando的声明显示了dynamic和expando之间的关系:
dynamic expando = new ExpandoObject();
以及添加新属性的能力:
expando.SomeNewStringVal = "Hello World!";
最后一行代码在expando对象中创建了一个名为
SomeNewStringVal
. 字符串类型是从赋值中推断出来的。
Here's a deeper look at dynamic and expando
.
using System;
using System.Dynamic;
class Program
{
static void Main(string[] args)
{
dynamic expando = new ExpandoObject();
expando.SomeNewStringVal = "Hello Brave New Whirrled!";
Console.WriteLine(expando.SomeNewStringVal);
// more expando coolness/weirdness:
var p = expando as IDictionary<String, object>;
p["A"] = "New val 1";
p["B"] = "New val 2";
Console.WriteLine(expando.A);
Console.WriteLine(expando.B);
}
}