using AutoMapper;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MyMapperTest
{
class Program
{
static void Main(string[] args)
{
Action<IMapperConfigurationExpression> configurationExpress = createMapperConfigurationExpress();
//Mapper.Initialize(c => configurationExpress(c));
//以下代码和第二行的Mapper.Initialize(c => configurationExpress(c));作用相同
Mapper.Initialize(cfg => {
cfg.CreateMap<AddressDto, Address>();
cfg.CreateMap<Address, AddressDto>();
});
//单个映射实例
//Mapper.Initialize(p => p.CreateMap<AddressDto, Address>());
AddressDto dto = new AddressDto
{
Country = "China",
City = "ShangHai",
Street = "JinZhong Street"
};
Address address = Mapper.Map<AddressDto, Address>(dto);
AddressDto dto2 = Mapper.Map<Address, AddressDto>(address);
}
public static Action<IMapperConfigurationExpression> createMapperConfigurationExpress()
{
return new Action<IMapperConfigurationExpression>(cfg =>
{
cfg.CreateMap<AddressDto, Address>();
cfg.CreateMap<Address, AddressDto>();
}
);
}
}
public class AddressDto
{
public string Country { get; set; }
public string City { get; set; }
public string Street { get; set; }
}
public class Address
{
public string Country { get; set; }
public string City { get; set; }
public string Street { get; set; }
}
}