Skip to content

A zero-configuration, highly-configurable, unopinionated object mapper with viewable execution plans. Flattens, unflattens, deep clones, merges, updates and projects queries. .NET 3.5+ and .NET Standard 1.0+.

License

agileobjects/AgileMapper

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

AgileMapper

NuGet version Build status

AgileMapper is a zero-configuration, highly-configurable, unopinionated object mapper with viewable execution plans. It flattens, unflattens, deep clones, merges, updates and projects queries via extension methods, or a static or instance API. It targets .NET 3.5+ and .NET Standard 1.0+.

You can use it to create new objects:

var customerDto = Mapper.Map(customer).ToANew<CustomerDto>();

...project queries:

var customerDtos = await context
    .Customers
    .Project().To<CustomerDto>()
    .ToArrayAsync();

...perform id-aware updates:

Mapper.Map(customerViewModel).Over(customer);

...and merges:

Mapper.Map(customerOne).OnTo(customerTwo);

It's available via NuGet and licensed with the MIT licence. Check out the documentation for more!

About

A zero-configuration, highly-configurable, unopinionated object mapper with viewable execution plans. Flattens, unflattens, deep clones, merges, updates and projects queries. .NET 3.5+ and .NET Standard 1.0+.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages