我想将一个匿名对象作为方法的参数,然后迭代其属性以将每个属性/值添加到动态ExpandoObject.
所以我需要的是去
new { Prop1 = "first value", Prop2 = SomeObjectInstance, Prop3 = 1234 }
Run Code Online (Sandbox Code Playgroud)
了解每个属性的名称和值,并能够将它们添加到ExpandoObject.
我该如何做到这一点?
旁注:这将在我的许多单元测试中完成(我用它来重构设置中的大量垃圾),因此性能在某种程度上是相关的.我不太了解反思,肯定地说,但从我所知道的那里,它的性能非常重,所以如果有可能我宁愿避免它......
后续问题:
正如我所说,我将这个匿名对象作为方法的参数.我应该在方法的签名中使用什么数据类型?如果我使用,object是否所有房产都可用?