Mapster, 一个比 AutoMapper 更快的对象映射库

你好,这里是 Dotnet 工具箱,定期分享 Dotnet 有趣,实用的工具和组件,希望对您有用!

Mapster 是什么?

Mapster 是一个 .NET 库,它提供了一种简单的方式来实现对象之间的映射。它使用了一个基于约定的自动映射策略,让你可以轻松地将一个对象转换为另一个对象。

编写映射方法是一项机器工作。不要浪费你的时间,让 Mapster 来做吧。.

安装

使用 NuGet CLI 安装 Mapster:

Install-Package Mapster

或者使用 .NET Core CLI 安装 Mapster:

dotnet add package Mapster

映射到新对象

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

映射到现有对象

sourceObject.Adapt(destObject);

依赖注入

还可以通过依赖注入获取 IMapper 实例,所以在从 automapper 迁移到 Mapster 时,基本上不需更改代码。

注入 Mapster 服务。

services.AddMapster();

然后和 DI 一起使用

public class Test
{
    public Test(IMapper mapper)
    {
        var sourceObject = mapper.Adapt<Destination>();
    }
}
为什么选择 Mapster?

Mapster 旨在提高速度和内存效率。它可以获得 4 倍的性能提升,同时仅仅使用了 1/3 的内存。 

测试报告

Mapster, 一个比 AutoMapper 更快的对象映射库

Mapster 是一个非常方便的库,它可以大大简化 .NET 项目中对象之间的映射工作,并且具有很好的可扩展性和灵活性。