对于属性很多的对象操作起来却相当麻烦,所以可以采用反射的机制,对每一个属性进行赋值,具体代码如下。
public static void CopyValue(object
origin,object
target)
{
System.Reflection.PropertyInfo[]
properties =
(target.GetType()).GetProperties();
System.Reflection.FieldInfo[]
fields = (origin.GetType()).GetFields();
for ( int i=0; i< fields.Length;
i++)
{
for ( int j=0; j< properties.Length;
j++)
{
if
(fields[i].Name == properties[j].Name &&
properties[j].CanWrite)
{
properties[j].SetValue(target,fields[i].GetValue(origin),null);
}
}
}
}