简单的C#实体映射 AutoMapper

时间:2022-04-11 11:10:21

AutoMapper是对象到对象的映射工具。在完成映射规则之后,AutoMapper可以将源对象转换为目标对象。

要映射实体
  public class SourceModel
{
public int ID { get; set; }
public string Name { get; set; }
public string Address { get; set; }
public string Mobile { get; set; }
}
被映射实体
  public class YingSheModel
{
public string Name { get; set; }
public string Address { get; set; }
}

需要将SourceModel类的对象映射到YingSheModel类的对象上面。需要对AutoMapper进行如下配置:

//注:Mapper.CreateMap由于nuget的最新版本用法改变了无法使用
//AutoMapper-8.1.0版本
Mapper.Initialize(cret => cret.CreateMap<SourceModel, YingSheModel>())

效果展示:

简单的C#实体映射 AutoMapper

全部代码:

using AutoMapper;
using System; namespace Mapping
{
class Program
{
static void Main(string[] args)
{
Mapper.Initialize(cret => cret.CreateMap<SourceModel, YingSheModel>());//配置
SourceModel sources = new SourceModel() { ID = , Name = "特朗普", Address = "北京市洪山区", Mobile = "" }; //给实体赋初始数据
YingSheModel dest = Mapper.Map<YingSheModel>(sources);
var model = new
{
              name = dest.Name,
              address = dest.Address
             };
             Console.WriteLine(model);
Console.ReadKey(); }
    }
public class SourceModel
{
public int ID { get; set; }
public string Name { get; set; }
public string Address { get; set; }
public string Mobile { get; set; }
}
public class YingSheModel
{
public string Name { get; set; }
public string Address { get; set; }
}
}