public static void SetFieldValue(object obj, FieldInfo field, object value) { //创建Set委托 var setter = DynamicMethodCompilerUtil.CreateSetHandler(obj.GetType(), field); //先获取该私有成员的数据类型 var type = field.FieldType; //通过数据类型转换 value = TypeUtil.ConvertForType(value, type); //将值设置到对象中 setter(obj, value); }
public static void SetPropertyValue(object obj, PropertyInfo property, object value) { //创建Set委托 var setter = DynamicMethodCompilerUtil.CreateSetHandler(obj.GetType(), property); //先获取该私有成员的数据类型 var type = property.PropertyType; //通过数据类型转换 value = TypeUtil.ConvertForType(value, type); //将值设置到对象中 setter(obj, value); }