将动态C#对象转换为数组

LB.*_*LB. 1 c# dynamic c#-4.0

有没有办法将动态对象转换为数组,如果它是Foo或Foo []类型的单个对象?

例如,

如果dynamic是Foo,则转换为Foo [],其中包含数组中的1个对象

如果dynamic是一个包含n个对象的数组Foo [],则转换为Foo [],其中包含n个数组中的对象.

xan*_*tos 7

我觉得有点愚蠢...这真的是你想要的吗?

class Test
{
}

dynamic dyn = new Test();

Test[] tests = null;

if (dyn is Test)
{
    tests = new Test[] { (Test)dyn };
}
else if (dyn is Test[])
{
    tests = (Test[])dyn;
}
Run Code Online (Sandbox Code Playgroud)