C# 数组创建
C# Array Creation
我无法弄清楚如何创建动态通用 ExpandoObject 元素数组。
我从这个声明开始,它有效:
/* WORKS */
dynamic expando = new ExpandoObject() as IDictionary<string,object>;
我想要的是一个由这样的对象组成的数组。我试过的语法是这样的:
/* DOES NOT WORK */
var expandoArray = new ExpandoObject[] as IDictionary<string, object>
{
new ExpandoObject() as IDictionary<string, object>,
new ExpandoObject() as IDictionary<string, object>
};
我的想法是,在创建 expandoArray 之后,我可以通过使用这样的结构(参见 http://weblog.west-wind.com/posts/2012/Feb/01/Dynamic-Types-and-DynamicObject-References-in-C)将其元素作为动态引用:
dynamic expandoArrayDynamic = expandoArray[x];
所以,我的两个具体问题是:
1. 如何创建一个 Expando 数组作为 IDictionary 对象?
2. 如何将数组元素视为动态对象?
这是你想要的吗?
var expandoArray = new IDictionary<string, object>[]
{
new ExpandoObject(),
new ExpandoObject(),
};
我无法弄清楚如何创建动态通用 ExpandoObject 元素数组。
我从这个声明开始,它有效:
/* WORKS */
dynamic expando = new ExpandoObject() as IDictionary<string,object>;
我想要的是一个由这样的对象组成的数组。我试过的语法是这样的:
/* DOES NOT WORK */
var expandoArray = new ExpandoObject[] as IDictionary<string, object>
{
new ExpandoObject() as IDictionary<string, object>,
new ExpandoObject() as IDictionary<string, object>
};
我的想法是,在创建 expandoArray 之后,我可以通过使用这样的结构(参见 http://weblog.west-wind.com/posts/2012/Feb/01/Dynamic-Types-and-DynamicObject-References-in-C)将其元素作为动态引用:
dynamic expandoArrayDynamic = expandoArray[x];
所以,我的两个具体问题是: 1. 如何创建一个 Expando 数组作为 IDictionary 对象? 2. 如何将数组元素视为动态对象?
这是你想要的吗?
var expandoArray = new IDictionary<string, object>[]
{
new ExpandoObject(),
new ExpandoObject(),
};