是否可以使用现有类型并使用其他属性从中创建匿名类型?例如(在VB中)
Public Class Person
Public Name As String
Public Age As Integer
End Class
Dim p As New Person With {.Name = "James", .Age = 100}
Dim n = New With {.ShoeSize = 10}
我想要的是克隆p的所有属性然后添加新属性(ShoeSize)的第二个对象(n)。
这可能吗?
非常感谢
詹姆斯
答案 0 :(得分:2)
在C#中没有语法可以做到这一点。你必须自己构建匿名类型,包含所有属性。
答案 1 :(得分:0)
如果您需要定期执行此操作,则对here列出的扩展程序进行修改可以节省一些输入内容。
也就是说,如果他们返回string.Join(", " , from p in ps select "." + p.Name + " = " + VarName + "." + p.Name)
,您至少可以保存一些打字。
OP中变量的示例:p.AllFieldsVb("p")
返回".Name = p.Name, .Age = p.Age"
。