【发布时间】:2013-02-18 17:58:21
【问题描述】:
我通过调用 dapper.Query(...) 获得了一个动态对象。
我想在运行时添加一个成员,但我不能。我知道 ExpandoObject 但它不需要构造函数来复制所有成员。
有没有一种方法可以复制动态对象的所有成员,然后添加我想要的一两个字段?
-edit- 通过变通方法解决。我在 sql (select ..., '' [MyFieldName]) 中添加了一个虚拟列,然后将 MyFieldName 分配给我的字符串值没有问题。
【问题讨论】:
-
请问您能展示一些您尝试过的代码吗?
-
@CuongLe:什么代码? ExpandoObject 不使用构造函数进行克隆,Query 位于众所周知的 dapper.net 中
-
首先为什么需要使用动态?你不能制作代表你从数据库中选择的数据元素的数据结构吗?
-
@DavidHughes:当我只需要一个额外的字段时,为什么还要创建一个数据结构?我找到了解决方案
-
因为您正在动态地将问题从编译时转移到运行时。