public Wayless(ISetRuleBuilder <TDestination, TSource> setRuleBuilder) { if (setRuleBuilder.ExpressionBuilder == null) { throw new NullReferenceException("SetRuleBuilder.ExpressionBuilder"); } if (!setRuleBuilder.IsFinalized) { setRuleBuilder.FinalizeRules(); } _map = CompileMap(setRuleBuilder); }
public static ISetRuleBuilder <TDestination, TSource> UseJsonMappingMatchMaker <TDestination, TSource>(this ISetRuleBuilder <TDestination, TSource> setRuleBuilder, string path) where TDestination : class where TSource : class { setRuleBuilder.AutoMatchMembers = true; setRuleBuilder.MatchMaker = new JsonFileMatchMaker(path); return(setRuleBuilder); }
public static ISetRuleBuilder <TDestination, TSource> OmitMatchMaker <TDestination, TSource>(this ISetRuleBuilder <TDestination, TSource> setRuleBuilder) where TDestination : class where TSource : class { setRuleBuilder.AutoMatchMembers = false; return(setRuleBuilder); }
public static ISetRuleBuilder <TDestination, TSource> UseDefaultMatchMaker <TDestination, TSource>(this ISetRuleBuilder <TDestination, TSource> setRuleBuilder) where TDestination : class where TSource : class { setRuleBuilder.AutoMatchMembers = true; setRuleBuilder.MatchMaker = new MatchMaker(); return(setRuleBuilder); }
public static ISetRuleBuilder <TDestination, TSource> UseDefaultExpressionBuilder <TDestination, TSource>(this ISetRuleBuilder <TDestination, TSource> setRuleBuilder) where TDestination : class where TSource : class { setRuleBuilder.ExpressionBuilder = new ExpressionBuilder(typeof(TDestination), typeof(TSource)); return(setRuleBuilder); }
public static ISetRuleBuilder <TDestination, TSource> UseDefaults <TDestination, TSource>(this ISetRuleBuilder <TDestination, TSource> setRuleBuilder) where TDestination : class where TSource : class { setRuleBuilder.UseDefaultExpressionBuilder() .UseDefaultMatchMaker(); return(setRuleBuilder); }
private static Action <TDestination, TSource> CompileMap(ISetRuleBuilder <TDestination, TSource> setRuleBuilder) { return(setRuleBuilder.ExpressionBuilder.CompileExpressionMap <TDestination, TSource>(setRuleBuilder.FieldExpressions.Values)); }