Simplify Your Projections with AutoMapper: Listing 2.

Creating a class that inherits from AutoMapper.Profile.

class SampleProfile : Profile
{
  public override string ProfileName
  {
    get { return "VSM Samples"; }
  }

  protected override void Configure()
  {
    Mapper.CreateMap<Employee, EmployeeStats>()
      .ForMember(d => d.SickDaysUsed, o => o.Ignore());

    Mapper.CreateMap<Employee, EmployeeStats>()
      .ForMember(d => d.SickDaysUsed, o => o.Ignore());

    Mapper.CreateMap<Employee, EmployeeService>()
      .ForMember(d => d.Years, 
        o => o.ResolveUsing<YearsOfServiceResolver>());

    Mapper.CreateMap<UserDTO, UserInfo>()
      .ForMember(d => d.HelpUri, o => o.Ignore());
  }
}

About the Author

Patrick Steele is a senior .NET developer with Billhighway in Troy, Mich. A recognized expert on the Microsoft .NET Framework, he’s a former Microsoft MVP award winner and a presenter at conferences and user group meetings.