public FieldOrPropertyMemberInfo GetFieldOrPropertyMemberInfo(string name) { FieldOrPropertyMemberInfo result = null; if (!_dataHolderMembers.Value.TryGetValue(name, out result)) { throw Exceptions.CannotFindFieldOrProperty(name, this.Type); } return(result); }
public void AddOrReplace(FieldOrPropertyMemberInfo memberInfo, object value) { var idxFound = _memberSetsRequests.FindIndex(item => item.MemberInfo.Equals(memberInfo)); if (idxFound == -1) { _memberSetsRequests.Add(new MemberSetRequest(memberInfo, value)); } else { _memberSetsRequests[idxFound] = new MemberSetRequest(memberInfo, value); } }
public T Get <T>(FieldOrPropertyMemberInfo memberInfo) { try { var setItem = _memberSetsRequests.FirstOrDefault(item => item.MemberInfo.Equals(memberInfo)); if (setItem == null) { return(default(T)); } return((T)ValueConverter.ConvertValueToTargetType(typeof(T), setItem.Value)); } catch (Exception ex) { throw Exceptions.FailedToGetValue(memberInfo.Name, _typeToBuild, ex); } }
public MemberSetRequest(FieldOrPropertyMemberInfo memberInfo, object value) { _memberInfo = memberInfo; _value = value; }