internal static IPropertyMapConfiguration Create( LambdaExpression destination, LambdaExpression source ) { if (destination == null || !destination.IsMemberPath(out var chain)) { return(null); } var reversed = new PathConfigurationExpression <TSource, TDestination, object>( destination, chain ); if (reversed.MemberPath.Length == 1) { var reversedMemberExpression = new MemberConfigurationExpression < TSource, TDestination, object >(reversed.DestinationMember, typeof(TSource)); reversedMemberExpression.MapFromUntyped(source); return(reversedMemberExpression); } reversed.MapFromUntyped(source); return(reversed); }
internal static IPropertyMapConfiguration Create(LambdaExpression destination, LambdaExpression source) { if (destination == null || !destination.IsMemberPath()) { return(null); } var reversed = new PathConfigurationExpression <TSource, TDestination>(destination); reversed.MapFromUntyped(source); return(reversed); }