1. 程式人生 > >C#小白使用AutoMapper物件對映器

C#小白使用AutoMapper物件對映器

不想看下面廢話就點下面兩個連結

核心程式碼點我

完整程式碼點我

AutoMapper就是一個物件對映器

我們既然都是要使用AutoMapper,那麼一定知道他能做什麼,如果不知道的話請看中間的程式碼即可,無須一字一字全部讀懂。
在我看來這就是個非常好的工具,平時我們都需要用迴圈的方式去做這些對映。其實除了我們的AutoMapper以外還有TinyMapper,不過現在TinyMapper不支援.net core 。唉~~,所以先用著這個吧!

環境 .net core 2.1,不過即使是framework 也不會有影響的。
下面這張圖片可以說明:

版本

核心程式碼: 完整程式碼點我

            //第一步初始化
            Mapper.Initialize(cfg =>
            {
                cfg.CreateMap<WorldA, WorldB>();
            });
            //宣告一個物件,並賦值
            WorldA world = new WorldA() { id = 1, wewe = 1.ToString() };
            //開始搬運
            var b = Mapper.Map<WorldA, WorldB>(world);
            //輸出搬運後的值
            Console.WriteLine(b.id);

完整程式碼

using AutoMapper;
using System;
namespace ConsoleApp4
{
    class Program
    {
        static void Main(string[] args)
        {
            //第一步初始化
            Mapper.Initialize(cfg =>
            {
                cfg.CreateMap<WorldA, WorldB>();
            });
            //宣告一個物件,並賦值
            WorldA world = new WorldA() { id = 1, wewe = 1.ToString() };
            //開始搬運
            var b = Mapper.Map<WorldA, WorldB>(world);
            //輸出搬運後的值
            Console.WriteLine(b.id);
            Console.WriteLine("按任意鍵結束");
            Console.ReadKey();
        }
    }
    public class WorldA
    {
        public int id { get; set; }
        public string wewe { get; set; }
    }
    public class WorldB
    {
        public int id { get; set; }
        public string wewe { get; set; }
    }
}

執行結果