1、介绍
FastMapper-基于约定的映射器。
功能强大的基于约定的,可自定义的,最快的对象-对象映射工具,对于实体到DTO,DTO到实体的映射策略很有用。
2、网址
3、使用
3.1安装
通过控制台
PM> Install-Package FastMapper
或者
3.2 定义类
public class A
{
public string name
{
get; set;
}
public int age
{
get; set;
}
}
public class B
{
public string name
{
get; set;
}
public int age
{
get; set;
}
}
3.3 新建实例
A mAN = new A() { name = "AAA", age = 25 };
3.4 普通转化,生成新实例
B wm1 = TypeAdapter.Adapt<A, B>(mAN);
B wm2 = TypeAdapter.Adapt<B>(mAN);
3.5 普通转化,赋值给现有实例
B wm3 = new B();
TypeAdapter.Adapt(mAN, wm3);
3.6 忽略某些字段,特殊处理某些字段
TypeAdapterConfig<A, B>.NewConfig().IgnoreMember(dest => dest.age).MapFrom(dest => dest.name, src => src.name + DateTime.Now.ToString());
var df3 = TypeAdapter.Adapt<A, B>(mAN);
var df4 = TypeAdapter.Adapt<B>(mAN);
4 性能对比
手写硬转化,fastmapper,automapper三才比较: