示例#1
0
        public TTarget Project <TSource, TTarget>(TSource item, Func <TTarget, object, TTarget> customMapping)
            where TSource : class
            where TTarget : class, new()
        {
            ValuesPostProcessor <TTarget> vpp = new ValuesPostProcessor <TTarget>(customMapping);

            return(ObjectMapperManager.DefaultInstance.GetMapper <TSource, TTarget>(DefaultMapConfig.Instance.PostProcess <TTarget>(vpp).SetConfigName(customMapping.Method.ToString())).Map(item));
        }
示例#2
0
        public MapBuilder <TSource> PostProcess <T>(ValuesPostProcessor <T> postProcessor)
        {
            //var vpp = new ValuesPostProcessor<T>((t1, t2) =>
            //{
            //    return postProcessor(t1);
            //});

            _config = _config.PostProcess(postProcessor);
            return(this);
        }
示例#3
0
 /// <summary>
 /// Define postprocessor for specified type
 /// </summary>
 /// <typeparam name="T">Objects of this type and all it's descendants will be postprocessed</typeparam>
 /// <param name="postProcessor"></param>
 /// <returns></returns>
 public TDerived PostProcess <T>(ValuesPostProcessor <T> postProcessor)
 {
     return((TDerived)base.PostProcess <T>(postProcessor));
 }
 /// <summary>
 /// Define postprocessor for specified type
 /// </summary>
 /// <typeparam name="T">Objects of this type and all it's descendants will be postprocessed</typeparam>
 /// <param name="postProcessor"></param>
 /// <returns></returns>
 public IMappingConfigurator PostProcess <T>(ValuesPostProcessor <T> postProcessor)
 {
     _postProcessors.Add(new[] { typeof(T) }, postProcessor);
     return(this);
 }