5

有没有办法可以将属性放在匿名类型的属性上?还是匿名类型本身?如果不是在您创建它时,也许之后通过反射?

作为一个潜在的使用场景,让我借用Dapper

当提供参数以在 Dapper 中执行查询时,您以匿名类型提供参数:

connection.Query<Foo>(sql, new { Id = guid, Condition = true });

假设我需要传达一些关于映射的信息,比如我们将布尔值存储为文本T/ F(可怕,但遗憾的是真实生活体验),所以我想向该属性添加一个属性Condition来告诉 Dapper 如何映射它(再次此是一个稍微强迫的例子)。那可能吗?

4

1 回答 1

6

不,您不能在声明时或之后进行反思。

最接近的方法是使用现有的匿名类型作为使用 CodeDom 或Mono Cecil创建的新类型的基础。

我怀疑您最好自己手动编写代码。

于 2013-04-26T19:02:11.290 回答