public static SourceMemberDataSource For(IQualifiedMember sourceMember, IMemberMapperData mapperData) { sourceMember = sourceMember.RelativeTo(mapperData.SourceMember); var sourceMemberValue = sourceMember .GetQualifiedAccess(mapperData) .GetConversionTo(sourceMember.Type); var sourceMemberDataSource = new SourceMemberDataSource(sourceMember, sourceMemberValue, mapperData); return(sourceMemberDataSource); }
private static IDataSource GetSourceMemberDataSourceOrNull( IQualifiedMember bestMatchingSourceMember, IChildMemberMappingData mappingData) { if (bestMatchingSourceMember == null) { return(null); } bestMatchingSourceMember = bestMatchingSourceMember.RelativeTo(mappingData.MapperData.SourceMember); var sourceMemberDataSource = new SourceMemberDataSource(bestMatchingSourceMember, mappingData.MapperData); return(GetFinalDataSource(sourceMemberDataSource, 0, mappingData)); }