A zero-configuration, highly-configurable, unopinionated object mapper for .NET with viewable execution plans.
AgileMapper is a .NET library for object-to-object mapping that requires no initial configuration while offering extensive customization. It solves the problem of tedious manual data transformation between objects by providing features like flattening, unflattening, deep cloning, merging, updates, and query projection.
.NET developers working on applications that require frequent data transformation between different object models, such as mapping domain entities to DTOs or view models.
Developers choose AgileMapper for its unique combination of zero-configuration startup, high configurability for complex scenarios, and transparency through viewable execution plans, all within an unopinionated design.
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+.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Works immediately without any setup, allowing quick integration into projects as emphasized in the README's description of no initial configuration.
Offers deep configuration for complex mapping scenarios, enabling precise control over data transformation through a flexible API as documented.
Provides transparency by allowing inspection of mapping logic for debugging and optimization, a unique feature among .NET mappers highlighted in the README.
Handles flattening, unflattening, deep cloning, merging, updates, and query projection, covering a wide range of common data transformation tasks.
Relies on reflection and dynamic code generation, which can be slower than compile-time alternatives like Mapster, especially in high-frequency mapping scenarios.
While highly configurable, the API for advanced settings can be verbose and have a steeper learning curve compared to simpler, more opinionated mappers.
Less popular than alternatives like AutoMapper, resulting in fewer third-party extensions, tutorials, and community support for niche use cases.