简单的C#实体映射 AutoMapper

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

要映射实体
1  public class SourceModel
2     {
3         public int ID { get; set; }
4         public string Name { get; set; }
5         public string Address { get; set; }
6         public string Mobile { get; set; }
7     }
View Code
被映射实体
1  public class YingSheModel
2     {
3         public string Name { get; set; }
4         public string Address { get; set; }
5     }
View Code

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

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

效果展示:

 

全部代码:

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 = 1, Name = "特朗普", Address = "北京市洪山区", Mobile = "18712457845" }; //给实体赋初始数据
            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; }
    }
}
posted @ 2018-12-12 17:52  得意洋洋~  阅读(4385)  评论(0编辑  收藏  举报