/// <summary> /// Set 属性值 /// </summary> /// <param name="target">拥有该成员的类实例</param> /// <param name="value">字段/属性值</param> public override void Set(object target, object value) { if (!_member.CanWrite) { throw new XfwException("this property [{0}] is unwritable", base.FullName); } _setter = _setter ?? MemberAccess_Property.InitializeSetter(_member); _setter(target, value ?? Helper.GetNullValue(_member.PropertyType)); }
/// <summary> /// Get 属性值 /// </summary> /// <param name="target">拥有该成员的类实例</param> /// <returns></returns> public override object Get(object target) { if (!_member.CanRead) { throw new XfwException("this property [{0}] is unreadable", base.FullName); } _getter = _getter ?? MemberAccess_Property.InitializeGetter(_member); return(_getter(target)); }