C#对象自动转换器


EmitMapper.dll

        /// 
        /// 对象自动转换。
        /// 
        /// 源类型
        /// 目标类型
        /// 源对象
        /// 返回目标对象
        public static Dest Map(Source source)
        {
            var mapper1 = ObjectMapperManager.DefaultInstance.GetMapper();
            return mapper1.Map(source);
        }

        /// 
        /// 对象集合自动转换。
        /// 
        /// 源类型
        /// 目标类型
        /// 源对象
        /// 返回目标对象
        public static IList MapList(IList sources)
        {
            if (null == sources)
                return null;
            var destList = new List();
            var maper = ObjectMapperManager.DefaultInstance.GetMapper();
            foreach (var _source in sources)
                destList.Add(maper.Map(_source));

            return destList;
        }

        /// 
        /// 对象集合自动转换。
        /// 
        /// 源类型
        /// 目标类型
        /// 源对象
        /// 返回目标对象
        public static ObservableCollection MapList(ObservableCollection sources)
        {
            if (null == sources)
                return null;
            var destList = new ObservableCollection();
            var maper = ObjectMapperManager.DefaultInstance.GetMapper();
            foreach (var _source in sources)
                destList.Add(maper.Map(_source));

            return destList;
        }    
C