![]() |
1
25
匿名类型封装了一组 只读的 性质。这说明
事实上,如果你改变
到
您将收到一个异常,通知您找不到属性集方法。
现在,为了解决你的问题,你能做的就是利用
所以只需运行一个循环,正如您所做的那样,来填充您需要传递到的对象数组。
有关更多信息,请参阅 MSDN page 匿名类型。 最后,这确实是一个旁白,与您的问题无关,但下面的代码
可以简化为
|
![]() |
2
2
我也遇到了同样的问题,我通过创建一个新的linq.expression解决了这个问题,这个表达式将完成真正的工作,并将其编译为lambda:下面是我的代码,例如: 我想转换那个调用:
对那个称呼:
做数据阅读器。从新方法中得到东西,第一个方法是:
我必须用新方法构建一个表达式:
这样做,我可以完全避免Activator.CreateInstance或FormatterServices.GetUninitializedObject之类的东西,我敢打赌速度会快得多;) |
![]() |
3
1
第2题: 我不知道,但我倾向于使用activator.createObject()而不是formatterServices.getUninitializedObject(),因为您的对象可能创建不正确。getUninitializedObject()不会运行像createObject()这样的默认构造函数,而且您不一定知道t的黑盒中有什么… |
![]() |
JBryanB · 如何从基本抽象类访问类属性 1 年前 |
![]() |
Gabe Tucker · 无法在golang中分配接口对象指针 2 年前 |
![]() |
jkone27 · F#-在编译时从字符串生成简单的空类型 7 年前 |
![]() |
John Bustos · C#通用工厂模式,不说明通用工厂模式的类型 7 年前 |
![]() |
Randall Flagg · 访问propertyinfo中的属性 7 年前 |
![]() |
Kacper · 在反映的全名和成员c后的“*”中,“+”是什么意思# 7 年前 |
![]() |
tobeypeters · 反射铸造 7 年前 |
![]() |
myst02 · 如何在另一个方法之后调用该方法? 7 年前 |