private static void TestDtoMapper() { //比较TinyMapper和EmitMapper的性能 var input = new DtoFrom { Name = "zhangsan", Age = 20, CreatedTime = DateTime.Now }; DtoTo result = null; var iteration = 10 * 10000; CodeTimerHelper.Initialize(); //1,EmitMapper CodeTimerHelper.Time("EmitMapper性能测试(10 * 10000)", iteration, () => { var mapper = ObjectMapperManager.DefaultInstance.GetMapper <DtoFrom, DtoTo>(); result = mapper.Map(input); }); //2,TinyMapper CodeTimerHelper.Time("TinyMapper性能测试(10 * 10000)", iteration, () => { TinyMapper.Bind <DtoFrom, DtoTo>(); result = TinyMapper.Map <DtoTo>(input); }); Console.ReadKey(); }
/// <summary> /// 测试深克隆的性能 /// </summary> private static void TestDeepClonePerf() { var iteration = 10 * 10000; CodeTimerHelper.Initialize(); var input = new DtoFrom { Name = "aaa", Age = 100, CreatedTime = DateTime.Now }; DtoFrom result = null; CodeTimerHelper.Time("测试深克隆的性能", iteration, () => { result = input.DeepClone(); }); Console.ReadKey(); }