如何使用反射复制数组?

时间:2013-01-05 04:17:21

标签: c# .net reflection

如果我有以下字节数组:

byte[] someArray = new byte { 0, 1, 2 };

我想通过反射将它复制到一个类的实例,你怎么能这样做?

// Inside a class method

PropertyInfo property = this.GetType().GetProperty("propertyName");

if(property.PropertyType == typeof(System.Byte[]))
{
    property.SetValue(this, ???, ???); // How to set an array?
} 

1 个答案:

答案 0 :(得分:6)

使用Array.Clone()

if(property.PropertyType == typeof(System.Byte[]))
{
    property.SetValue(this, someArray.Clone(), null); 
}