|
|
1
3
不,这是不可能的。LINQ表达式的select子句允许生成值的普通C#表达式。没有C#构造可以像这样通过对象初始值设定项以模板样式创建对象。您需要列出属性或使用显式构造函数。 |
|
|
2
1
如果将构造函数添加到
但是,没有办法告诉编译器“只需显式地跨多个对象复制所有属性” |
|
|
3
1
1.)重载一个构造函数并复制那里的所有值(然而,这正是您试图逃避的。 2.)使用反射复制属性(许多不良副作用,不推荐)
3.)使用装饰图案。看起来您为原始类添加了值,所以我认为这将是使用decorator的最佳时机。这也使得添加属性时不会遗漏它们。它会破坏编译,但是如果要修饰的对象是
|
|
|
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 1 年前 |
|
|
Pavel Foltyn · 如何在C中生成逆字典# 1 年前 |
|
ewok · 基于种子和上一个值创建值列表 1 年前 |
|
|
Vasu V · 将foreach转换为select语句 1 年前 |
|
Modest · 使用命名空间和文本值序列化xElement 1 年前 |