public int Value { get; set; }
public int Value { get; set; }
Mapper.CreateMap<SourceValue, DestValue>();
var sourceDict = new Dictionary<string, SourceValue>
{"First", new SourceValue(){Value = 5}},
{"Second",new SourceValue(){Value = 10}}
public enum OrderStatus : short
var dest = Mapper.Map<OrderStatus, OrderStatusDto>(OrderStatus.InProgress);
Mapper.Map<AttributeTargets, AttributeTargets>(AttributeTargets.Class | AttributeTargets.Interface);
public int Value { get; set; }
public int Value2 { get; set; }
public int Total { get; set; }
public class CustomResolver : ValueResolver<Source1,int>
protected override int ResolveCore(Source1 source)
return source.Value + source.Value2;
Mapper.CreateMap<Source1, Destination1>()
.ForMember("Total", opt => opt.ResolveUsing<CustomResolver>());
var dest = Mapper.Map<Source1, Destination1>(source);
派生ValueResolver<,>实现自定义解析器,实现对源属性的"计算" 转换成目标属性。
private readonly IList<OrderLineItem2> _orderLineItems = new List<OrderLineItem2>();
public Customer2 Customer { get; set; }
public OrderLineItem2[] GetOrderlineItems()
return _orderLineItems.ToArray();
public void AddOrderLineItem(Product2 product, int quantity)
_orderLineItems.Add(new OrderLineItem2(product, quantity));
return _orderLineItems.Sum(li => li.GetTotal());
public OrderLineItem2(Product2 product, int quantity)
public Product2 Product { get; set; }
public int Quantity { get; set; }
return Quantity*Product.Price;
public string Name { get; set; }
public string Name { get; set; }
public decimal Price { get; set; }
public string CustomerName { get; set; }
public decimal Total { get; set; }
Mapper.CreateMap<Order2, Order2Dto>();
var customer = new Customer2()
order.AddOrderLineItem(product, 10);
联系客服