精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

ASP.NET Core Web中使用AutoMapper進行對象映射

開發 前端
AutoMapper是一個簡單易用的.NET對象映射庫,用于快速、方便地進行對象之間的轉換和映射,極大的簡化了開發人員在處理對象映射時的工作量。

前言

在日常開發中,我們常常需要將一個對象映射到另一個對象,這個過程中可能需要編寫大量的重復性代碼,如果每次都手動編寫,不僅會影響開發效率,而且當項目越來越復雜、龐大的時候還容易出現錯誤。為了解決這個問題,對象映射庫就隨之而出了,這些庫可以自動完成對象之間的映射,從而減少大量的開發工作量,提高開發工作效率。今天我們來講講在ASP.NET Core Web中使用AutoMapper快速進行對象映射。

使用對象映射庫有哪些好處?

  • 減少開發工作量,提高開發效率。
  • 減少開發過程中的錯誤和bug。
  • 簡化代碼結構,提高代碼可讀性和可維護性。

AutoMapper對象映射庫介紹

AutoMapper是一個簡單易用的.NET對象映射庫,用于快速、方便地進行對象之間的轉換和映射,極大的簡化了開發人員在處理對象映射時的工作量。

  • GitHub開源地址:https://github.com/AutoMapper/AutoMapper
  • 在線文檔地址:https://docs.automapper.org/en/stable/Getting-started.html

安裝AutoMapper NuGet包

在ASP.NET Core Web API項目中搜索:AutoMapper NuGet包安裝。

圖片圖片

創建源對象和目標對象

接下來我們分別定義一個源對象(Student)和一個目標對象(StudentViewModel)。

Student(源對象)

public class Student
    {
        /// <summary>
        /// 學生ID [主鍵,自動遞增]
        /// </summary>
        [PrimaryKey, AutoIncrement]
        [Display(Name = "學生ID")]
        public int StudentID { get; set; }

        /// <summary>
        /// 班級ID
        /// </summary>
        [Display(Name = "班級ID")]
        public int ClassID { get; set; }

        /// <summary>
        /// 學生姓名
        /// </summary>
        [Display(Name = "學生姓名")]
        public string Name { get; set; }

        /// <summary>
        /// 學生年齡
        /// </summary>
        [Display(Name = "學生年齡")]
        public int Age { get; set; }

        /// <summary>
        /// 學生性別
        /// </summary>
        [Display(Name = "學生性別")]
        public string Gender { get; set; }
    }

StudentViewModel(目標對象)

public class StudentViewModel
    {
        /// <summary>
        /// 學生ID [主鍵,自動遞增]
        /// </summary>
        [PrimaryKey, AutoIncrement]
        [Display(Name = "學生ID")]
        public int StudentID { get; set; }

        /// <summary>
        /// 班級ID
        /// </summary>
        [Display(Name = "班級ID")]
        public int ClassID { get; set; }

        /// <summary>
        /// 學生姓名
        /// </summary>
        [Display(Name = "學生姓名")]
        public string Name { get; set; }

        /// <summary>
        /// 學生年齡
        /// </summary>
        [Display(Name = "學生年齡")]
        public int Age { get; set; }

        /// <summary>
        /// 學生性別
        /// </summary>
        [Display(Name = "學生性別")]
        public string Gender { get; set; }

        /// <summary>
        /// 班級名稱
        /// </summary>
        [Display(Name = "班級名稱")]
        public string ClassName { get; set; }
    }

配置AutoMapper映射規則

我們可以定義一個AutoMapperMappingProfile的映射配置文件,并在其中定義源類型和目標類型之間的映射關系。

using AutoMapper;
using Entity;
using Entity.ViewModel;

namespace WebApi
{
    /// <summary>
    /// AutoMapper映射配置文件
    /// </summary>
    public class AutoMapperMappingProfile : Profile
    {
        /// <summary>
        /// 添加映射規則
        /// </summary>
        public AutoMapperMappingProfile()
        {
            CreateMap<Student, StudentViewModel>();
        }
    }
}

Program中注冊AutoMapper服務

使用AddAutoMapper()方法可以將AutoMapper所需的服務添加到該集合中,以便在應用程序的其他部分中使用。該方法需要傳入一個Assembly數組,以告訴AutoMapper要掃描哪些程序集來查找映射配置(在當前作用域的所有程序集里面掃描AutoMapper的配置文件)。

public static void Main(string[] args)
        {
            var builder = WebApplication.CreateBuilder(args);

            builder.Services.AddControllers();

            //添加 AutoMapper 的配置
            //使用AddAutoMapper()方法可以將AutoMapper所需的服務添加到該集合中,以便在應用程序的其他部分中使用。
            //該方法需要傳入一個Assembly數組,以告訴AutoMapper要掃描哪些程序集來查找映射配置(在當前作用域的所有程序集里面掃描AutoMapper的配置文件)。
            builder.Services.AddAutoMapper(AppDomain.CurrentDomain.GetAssemblies());

        }

進行對象映射操作

依賴注入獲取IMapper接口的實例

/// <summary>
    /// 學生管理
    /// </summary>
    [ApiController]
    [Route("api/[controller]/[action]")]
    public class StudentController : ControllerBase
    {
        private readonly IMapper _mapper;

        /// <summary>
        /// 依賴注入
        /// </summary>
        /// <param name="mapper">mapper</param>
        public StudentController(IMapper mapper)
        {
            _mapper = mapper;
        }
    }

進行對象映射操作

接下來我們使用使用IMapper接口的Map方法來進行對象映射操作。

var studentsListDto = _mapper.Map<List<StudentViewModel>>(students);

映射結果輸出

圖片圖片

完整示例源代碼

  • https://github.com/YSGStudyHards/EasySQLite

圖片 圖片

責任編輯:武曉燕 來源: 追逐時光者
相關推薦

2024-02-26 08:15:00

數據映代碼開發

2023-12-15 15:03:54

.NETAutoMapper對象映射工具

2021-01-31 22:56:50

FromServiceASP

2021-02-28 20:56:37

NCache緩存框架

2021-02-03 13:35:25

ASPweb程序

2021-03-10 09:40:43

LamarASP容器

2021-01-28 22:39:35

LoggerMessa開源框架

2021-01-07 07:39:07

工具接口 Swagger

2021-03-03 22:37:16

MediatR中介者模式

2021-02-06 21:40:13

SignalR通訊TypeScript

2021-03-17 09:45:31

LazyCacheWindows

2021-02-02 16:19:08

Serilog日志框架

2021-02-17 08:51:55

cookie身份驗證

2021-02-07 17:29:04

監視文件接口

2009-07-21 15:55:59

使用Web PartsASP.NET 2.0

2009-07-20 16:45:41

使用StringBuiASP.NET

2021-01-26 14:57:00

中間件應用模塊化

2021-01-04 05:44:54

框架日志

2021-04-12 07:03:10

輕量級模塊化框架

2021-06-22 16:59:56

微軟.NETC# 軟件開發
點贊
收藏

51CTO技術棧公眾號

欧美三级免费看| avav在线看| 色屁屁草草影院ccyycom| av成人天堂| 在线日韩第一页| 四川一级毛毛片| 日韩脚交footjobhdboots| 日本一区二区在线不卡| 91亚色免费| 亚洲大片免费观看| 91精品一区国产高清在线gif| 欧美精品一区二区精品网| 亚洲少妇第一页| av在线不卡免费| 国产精品你懂的在线欣赏| 国产精品国色综合久久| 一级特黄aaa大片| 性欧美长视频| 欧美日韩成人在线播放| 精品无码国产污污污免费网站| 欧美a在线观看| 欧美性受极品xxxx喷水| 草b视频在线观看| 婷婷激情在线| 成人在线免费网站| 捷克做爰xxxⅹ性视频| 日本а中文在线天堂| 亚洲欧美一区二区三区国产精品 | 91天堂素人约啪| 国产又爽又黄的激情精品视频| 国产精品999在线观看| 中国成人一区| 最近2019年手机中文字幕 | 国产亚洲精品bt天堂精选| 亚洲最大福利网| 91国内精品久久久| 日韩精品三区四区| 欧美与黑人午夜性猛交久久久| 五月天激情丁香| 国产精品99久久久久久动医院| 亚洲男人天堂古典| 中文字幕丰满孑伦无码专区| 澳门久久精品| 精品国产百合女同互慰| 精品国产乱码久久久久久1区二区| 欧美性片在线观看| 色诱亚洲精品久久久久久| 欧美日韩精品在线一区二区| 国产99re66在线视频| 一区二区三区四区高清精品免费观看| 自拍偷拍亚洲色图欧美| 欧美一区二区三区| 国产精品不卡在线| 欧美日韩国产影片| 五月天激情图片| 黄视频网站在线看| 亚洲天堂免费看| 中文字幕av导航| 国产三区在线观看| 亚洲精品视频自拍| 日韩国产小视频| 爱情岛论坛亚洲品质自拍视频网站| 亚洲精选视频免费看| 日韩视频 中文字幕| 乱插在线www| 午夜精品福利一区二区三区av| 成人网站免费观看入口| 特黄毛片在线观看| 日本韩国精品在线| 亚洲娇小娇小娇小| 欧美另类中文字幕| 精品国产成人系列| 在线免费看黄视频| 日韩欧美自拍| 美女性感视频久久久| 久久黄色小视频| 国产精品一级| 国产精品久久久999| 一本色道久久综合亚洲| 国产美女视频一区| 精品无码久久久久久久动漫| 男女污污视频在线观看| 国产精品乱码人人做人人爱 | 在线观看国产原创自拍视频| 亚洲男同性视频| 久久精品xxx| 日韩天堂在线| 日韩三级视频在线观看| 黄色短视频在线观看| 日韩一区电影| 午夜精品福利电影| 中文字幕人妻一区二区在线视频| 国产精品资源网| 美国av一区二区三区| 激情在线小视频| 岛国视频午夜一区免费在线观看| 手机看片福利盒子久久| 亚洲一区电影| 国产亚洲精品91在线| 欧美黄色免费观看| 三级在线观看一区二区| 97se国产在线视频| 国产在线一二三| 亚洲精品免费播放| av五月天在线| 大香伊人久久精品一区二区| 中文字幕精品一区二区精品| 日本在线视频免费| 精品午夜一区二区三区在线观看| 精品久久久久久综合日本| 日本网站在线免费观看视频| 欧美特级www| 超碰在线超碰在线| 日本道不卡免费一区| 午夜精品福利视频| 99国产精品99| 国产欧美一区二区精品久导航| 国产成a人亚洲精v品在线观看| 丰满少妇一区| 亚洲社区在线观看| 日韩成人一区二区三区| 国产一区二区三区四区五区入口 | 欧美一区二区在线| 91九色美女在线视频| 在线成人av影院| 国产精品www爽爽爽| 国产欧美亚洲一区| 成人在线看片| 日本理论片午伦夜理片在线观看| 欧美午夜影院一区| 人妻一区二区视频| 鲁大师成人一区二区三区| 国产精品一区二区在线观看| 直接在线观看的三级网址| 欧美日韩一区久久| 日韩中文字幕有码| 久久精品麻豆| 欧美日韩综合精品| 樱花草涩涩www在线播放| 精品国产伦一区二区三区观看方式| 久久99精品国产一区二区三区| 国产在线一二| 91国产福利在线| 一级黄色片网址| 日韩电影一二三区| 亚洲日本精品国产第一区| 性欧美gay| 亚洲天堂网在线观看| 亚洲综合久久网| 久久亚洲精精品中文字幕早川悠里| www..com日韩| 老牛国内精品亚洲成av人片| 91干在线观看| 精品电影在线| 精品视频在线免费看| 日本污视频网站| 久久99国产精品久久99果冻传媒| 三年中文高清在线观看第6集| 亚洲精品无播放器在线播放| 久久精品国产精品亚洲| a在线观看视频| 亚洲一区二区av电影| 国产高潮视频在线观看| 亚洲一区免费| 日韩.欧美.亚洲| 美女久久久久久| 美女性感视频久久久| 成人久久精品人妻一区二区三区| 舔着乳尖日韩一区| 这里只有久久精品| 麻豆精品视频在线| 国产911在线观看| 极品尤物一区| 日韩美女免费观看| 日本免费在线观看| 亚洲成人av资源网| 91视频在线视频| 18成人在线视频| www.啪啪.com| 男人的天堂久久精品| 97在线免费视频观看| 偷拍视屏一区| 91精品国产综合久久香蕉的用户体验| 女人黄色免费在线观看| 国产丝袜一区二区三区免费视频| 亚洲天堂网视频| 亚洲一区二区三区美女| 无码人妻精品一区二区中文| 精品在线观看免费| 日韩小视频在线播放| 欧美丝袜一区| 国产精品18毛片一区二区| 欧美激情喷水| 欧美高清在线观看| 国产三级在线免费| 精品美女在线播放| 亚洲av无码不卡| 一区二区三区影院| 丁香花五月婷婷| av中文字幕一区| 五月天婷婷在线观看视频| 性色av一区二区怡红| 欧洲精品视频在线| 欧美色网址大全| 精品在线视频一区二区| 97色婷婷成人综合在线观看| 欧美亚洲成人网| 亚洲图区一区| 日韩在线www| 伦理片一区二区三区| 精品国产一区二区三区不卡| 一区二区三区在线免费观看视频| 午夜视频一区在线观看| 久久国产精品国语对白| 久久精品一区蜜桃臀影院| 日本一区二区免费视频| 国产真实乱对白精彩久久| 欧美一级黄色片视频| 激情综合久久| 男人草女人视频| 91蜜臀精品国产自偷在线| 欧美日韩一区二区视频在线观看| 超碰在线一区| 亚洲一区二区三区乱码aⅴ| 欧美日韩在线精品一区二区三区激情综合 | 99久久夜色精品国产亚洲狼| 欧美日韩日本网| 日韩高清三区| 国产在线资源一区| 97se亚洲| 超碰97网站| 欧美专区视频| 亚洲xxxxx| 91精品福利观看| 国产精品综合网站| 国产精品亚洲成在人线| 国产精品久久久久久久久久三级| 另类专区亚洲| 日本高清视频一区| 欧美黑人粗大| 国产精品吊钟奶在线| 亚洲午夜久久久久久久久| 亚洲精选在线| 人人妻人人添人人爽欧美一区| 欧美日韩国产色综合一二三四| 欧美精品一区二区性色a+v| 久久综合成人| 日韩精品一区二区三区电影| 在线一区电影| 国产精品视频网站在线观看| 欧美精品国产| 九色自拍视频在线观看| 国产日韩欧美一区在线| 成人观看免费完整观看| 日本亚洲视频在线| 亚洲久久中文字幕| 国产一区二区三区日韩| 国产成人精品综合久久久久99| 国产精品99久久久久久久vr| 一区二区三区四区影院| gogogo免费视频观看亚洲一| 精品人妻一区二区三区香蕉 | 成人信息集中地| 亚洲色图一区二区| 久久久久久久久艹| 欧美日韩性生活视频| 无码人妻精品一区二区三区9厂| 在线精品视频一区二区| 在线观看xxxx| 日韩欧美国产一二三区| 成人午夜免费福利| 亚洲欧美综合图区| 一级日本在线| 欧美国产日产韩国视频| av资源网在线播放| 国产成人综合精品| 国模大尺度视频一区二区| 国产精品日本一区二区 | 夜夜嗨av色一区二区不卡| 美女黄视频在线观看| 欧美激情网友自拍| 性感美女一区二区在线观看| 国产在线视频一区| 老牛国内精品亚洲成av人片| 亚洲精品日韩在线观看| 欧美99在线视频观看| 人妻少妇被粗大爽9797pw| 精品在线一区二区三区| 国产一级免费片| 国产精品视频在线看| 久草视频精品在线| 欧美午夜影院一区| 神马久久久久久久久久| 俺去亚洲欧洲欧美日韩| 国产激情视频在线看| 成人免费午夜电影| 国产精品嫩草影院在线看| 欧美 亚洲 视频| 免费高清在线一区| 白嫩情侣偷拍呻吟刺激| 中文字幕中文字幕一区| 国产中文字幕视频| 欧美一区二区日韩一区二区| 日产精品久久久久久久性色| 免费91麻豆精品国产自产在线观看| 黑人巨大精品欧美一区二区桃花岛| 91在线高清免费观看| 奇米狠狠一区二区三区| 国产精彩视频一区二区| 久88久久88久久久| 加勒比一区二区| 亚洲国产成人91porn| 国产精品国产一区二区三区四区| 国产丝袜一区视频在线观看| 女同视频在线观看| 91亚洲永久免费精品| 大色综合视频网站在线播放| 亚洲熟妇av一区二区三区漫画| 国产成人久久精品77777最新版本| 精品日韩在线视频| 在线精品亚洲一区二区不卡| 深夜视频在线免费| 久久久久久久久久久国产| 亚洲人成777| 日韩欧美一区二区三区四区五区| 一本色道久久| 中文字幕天堂网| 亚洲一线二线三线久久久| 国产丝袜在线视频| www.99久久热国产日韩欧美.com| 欧美1级2级| 久久偷窥视频| 久久精品午夜| 黑人巨大精品欧美| 日韩欧美在线播放| 神马久久精品| 日韩免费在线播放| 美日韩中文字幕| 欧美成人免费高清视频| xfplay精品久久| 在线精品免费视| 亚洲美女av在线播放| 人成在线免费网站| 久久久久久亚洲精品不卡4k岛国| 一本久道综合久久精品| 丰满少妇在线观看资源站| 福利视频导航一区| 久久精品a一级国产免视看成人| 国产成人福利网站| 精品国产午夜| 一本岛在线视频| 国产精品免费久久| 国产视频手机在线观看| 久久91亚洲精品中文字幕奶水| 亚洲国产日韩在线观看| 欧美三片在线视频观看| 日韩三级影院| 91成人免费看| 亚洲国内精品| 中文字幕高清视频| 欧美亚洲图片小说| 成人福利在线观看视频| 高清日韩一区| 西西人体一区二区| 久久久国产一级片| 欧美一卡2卡三卡4卡5免费| 狂野欧美性猛交xxxxx视频| 九九久久99| 日本视频在线一区| 91香蕉视频在线播放| 精品奇米国产一区二区三区| 中日韩脚交footjobhd| 午夜一区二区三区| 国产一区二区三区四区在线观看| 国产午夜福利精品| 亚洲日韩欧美视频| 久久av偷拍| 精品人妻一区二区三区四区在线| 国产欧美精品一区二区色综合| 国产熟女一区二区三区四区| 欧美综合激情网| 亚洲成av人片乱码色午夜| 国产二级一片内射视频播放| 欧美在线999| 麻豆av在线免费观看| 日韩国产精品一区二区| 国产精品一卡二| 中文字幕在线观看视频免费| 久久福利视频导航| 亚欧日韩另类中文欧美| jizz欧美性11| 香蕉成人伊视频在线观看| av影片在线看| 国内精品视频免费| 精品一区二区三区的国产在线播放| 国产乡下妇女做爰| 色青青草原桃花久久综合| 欧美a一欧美| 手机在线观看日韩av| 91国偷自产一区二区三区成为亚洲经典 |