Available on nuget
PM> Install-Package TinyMapper
TinyMapper.Bind<Person, PersonDto>();
var person = new Person
{
Id = Guid.NewGuid(),
FirstName = "John",
LastName = "Doe"
};
var personDto = TinyMapper.Map<PersonDto>(person);
Ignore mapping source members and bind members with different names/types
TinyMapper.Bind<Person, PersonDto>(config =>
{
config.Ignore(x => x.Id);
config.Ignore(x => x.Email);
config.Bind(source => source.LastName, target => target.Surname);
config.Bind(target => source.Emails, typeof(List<string>));
});
var person = new Person
{
Id = Guid.NewGuid(),
FirstName = "John",
LastName = "Doe",
Emails = new List<string>{"support@tinymapper.net", "MyEmail@tinymapper.net"}
};
var personDto = TinyMapper.Map<PersonDto>(person);
TinyMapper
supports the following platforms:
- .Net 3.0+
- Mono
- TinyMapper: yet another object to object mapper for .net
- Complex mapping
- How to create custom mapping
A big thanks to all of TinyMapper's contributors: