Popularity
4.8
Stable
Activity
6.9
Stable
438
32
57

Description

A fast, fun and stimulating object to object Mapper

Programming language: C#

Mapster alternatives and similar packages

Based on the "Object to object mapping" category

Do you think we are missing an alternative of Mapster or a related project?

Add another 'Object to object mapping' Package

README

Mapster Icon

Mapster - The Mapper of Your Domain

Writing mapping method is machine job. Do not waste your time, let Mapster do it.

Get it

PM> Install-Package Mapster

Basic usage

Mapping to a new object

Mapster creates the destination object and maps values to it.

var destObject = sourceObject.Adapt<Destination>();

Mapping to an existing object

You make the object, Mapster maps to the object.

sourceObject.Adapt(destObject);

Queryable Extensions

Mapster also provides extensions to map queryables.

using (MyDbContext context = new MyDbContext())
{
    // Build a Select Expression from DTO
    var destinations = context.Sources.ProjectToType<Destination>().ToList();

    // Versus creating by hand:
    var destinations = context.Sources.Select(c => new Destination {
        Id = p.Id,
        Name = p.Name,
        Surname = p.Surname,
        ....
    })
    .ToList();
}

What's new in Mapster 4.0

  • Two ways mapping
  • Unflattening
  • Map & ignore by property path
  • MaxDepth
  • Map to constructor

Why Mapster?

Performance

Don't let other libraries slow you down, Mapster performance is at least 2.5 times faster!
And 3.x times faster with FastExpressionCompiler and Mapster CodeGen!

image

Step into debugging

Step-into debugging lets you debug your mapping and inspect values as same as its your code. image

Code Generation NEW!!

Mapster CodeGen lets you do mapping with

  • Validate mapping at compile time
  • Getting raw performance
  • Seeing your mapping code & debugging
  • Finding usage of your models' properties

Change logs

https://github.com/MapsterMapper/Mapster/releases

Usages

https://github.com/MapsterMapper/Mapster/wiki