ویژگی های پیشرفته ی AutoMapper - قسمت اول
نویسنده: محمد صاحب
تاریخ: ۱۳۹۱/۰۴/۲۲ ۱۳:۴۰
آدرس: www.dntips.ir
| مطالب | ۳۶۹۴ |
| نویسندگان | ۲۷۶ |
| گروههای مطالب | ۱۰۲۴ |
| نقشههای راه | ۱۱۹ |
| دورهها | ۱۴ |
| اشتراکها | ۱۷۹۱۴ |
public class Person
{
public int Id { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
}
public class PersonDTO
{
public int Id { get; set; }
public string Name { get; set; }
public string Family { get; set; }
public string FullName { get; set; }
public string Email { get; set; }
}
Mapper.CreateMap<Person, PersonDTO>().ForMember(des => des.Name, op => op.MapFrom(src => src.FirstName)).
ForMember(des => des.FullName, op => op.MapFrom(src => src.FirstName + " " + src.LastName)).ForMember(
des => des.Email, op => op.Ignore());
AutoMapper.IMappingExpression<TSource,TDestination>.ForMember(System.Linq.Expressions.Expression<System.Func<TDestination,object>>, System.Action<AutoMapper.IMemberConfigurationExpression<TSource>>)
Mapper.AssertConfigurationIsValid();
var person = new Person
{
Id = 1,
FirstName = "Mohammad",
LastName = "Saheb",
};
var personDTO = Mapper.Map<Person, PersonDTO>(person);
IEnumerable, IEnumerable<T>, ICollection, ICollection<T>, IList, IList<T>, List<T>.
var persons = new[]
{
new Person { Id = 1, FirstName = "Mohammad", LastName = "Saheb" },
new Person { Id = 2, FirstName = "Babak", LastName = "Saheb" }
};
var personDTOs = Mapper.Map<Person[], List<PersonDTO>>(persons);
public class Address
{
public string Ad1 { get; set; }
public string Ad2 { get; set; }
}
public class AddressDTO
{
public string Ad1 { get; set; }
public string Ad2 { get; set; }
}
Mapper.CreateMap<Address, AddressDTO>();