@@ -388,7 +388,7 @@ private MemberBinding DoBind(MemberInfo sourceMember, Expression initial, Expres
388388 private MemberInfo GetSourceMember ( PropertyMap propertyMap )
389389 => propertyMap . CustomMapExpression != null
390390 ? propertyMap . CustomMapExpression . GetMemberExpression ( ) ? . Member
391- : propertyMap . SourceMember ;
391+ : propertyMap . SourceMembers . Last ( ) ;
392392
393393 private MemberInfo GetParentMember ( PropertyMap propertyMap )
394394 => propertyMap . IncludedMember ? . ProjectToCustomSource != null
@@ -717,10 +717,6 @@ TypeMap GetTypeMap() => BothTypesAreAnonymous()
717717 {
718718 var propertyMap = typeMap . GetMemberMapByDestinationProperty ( sourceFullName ) ;
719719 var sourceMemberInfo = typeSource . GetFieldOrProperty ( propertyMap . GetDestinationName ( ) ) ;
720- if ( propertyMap . ValueResolverConfig != null )
721- {
722- throw new InvalidOperationException ( Properties . Resources . customResolversNotSupported ) ;
723- }
724720
725721 if ( propertyMap . CustomMapExpression == null && ! propertyMap . SourceMembers . Any ( ) )
726722 throw new InvalidOperationException ( string . Format ( CultureInfo . CurrentCulture , Properties . Resources . srcMemberCannotBeNullFormat , typeSource . Name , typeDestination . Name , sourceFullName ) ) ;
@@ -746,7 +742,7 @@ TypeMap GetTypeMap() => BothTypesAreAnonymous()
746742 var childFullName = sourceFullName . Substring ( sourceFullName . IndexOf ( period , StringComparison . OrdinalIgnoreCase ) + 1 ) ;
747743
748744 FindDestinationFullName ( sourceMemberInfo . GetMemberType ( ) , propertyMap . CustomMapExpression == null
749- ? propertyMap . SourceMember . GetMemberType ( )
745+ ? propertyMap . SourceMembers . Last ( ) . GetMemberType ( )
750746 : propertyMap . CustomMapExpression . ReturnType , childFullName , propertyMapInfoList ) ;
751747 }
752748 }
0 commit comments