我可以使用一些重新帮助。我将一个对象传递给另一个对象的构造函数。我需要遍历参数的属性并根据它设置新的对象属性。大多数(但不是全部)params属性存在于新对象中。
到目前为止我有这个基本的骨架。
public DisabilityPaymentAddEntity(DisabilityPaymentPreDisplayEntity preDisplay)
{
Init(preDisplay);
}
private void Init(DisabilityPaymentPreDisplayEntity display)
{
//need some type of loop using reflection here
}
在'Init'方法中,我需要遍历'display'的属性,并将同名的'DisabilityPaymentAddEntity'属性设置为preDisplay中的值。
任何人都可以告诉我我需要做什么吗?我确信我需要使用PropertyInfo等。
谢谢, 〜在圣地亚哥
答案 0 :(得分:3)
我认为这样的事情
Type target = typeof(DisabilityPaymentAddEntity);
foreach(PropertyInfo pi in display.GetType().GetProperties())
{
PropertyInfo targetProp = target.GetProperty(pi.Name);
if(targetProp!=null)
{
targetProp.SetValue(this, pi.GetValue(display, null), null);
}
}