.net5 使用AutoMapper

步骤1:项目引用AutoMapperAutoMapper.Extensions.Microsoft.DependencyInjection

步骤2:建立文件 DevProCommonFileIProfile:是一个空接口,主要用来动态加载文件时查找相关文件,也就时说DevProCommonFile这种文件可以建立多个,只要继承Profile, IProfile就会被框架加入using AutoMapper;using Dev.WooNet.Model.DevDTO;using Dev.WooNet.Model.Models;using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace Dev.WooNet.AutoMapper.ProFiles{    /// <summary>    /// 公共映射文件    /// </summary>    public class DevProCommonFile : Profile, IProfile    {        public DevProCommonFile()        {            CreateMap<DepartData, DevDepartment>();          //.ForMember(a => a.ContId, opt => opt.Ignore())          //.ForMember(a => a.CreateUserId, opt => opt.Ignore())          //.ForMember(a => a.CreateDateTime, opt => opt.Ignore())          //.ForMember(a => a.ModifyUserId, opt => opt.Ignore())          //.ForMember(a => a.ModifyDateTime, opt => opt.Ignore());        }           }}步骤3:设置加载文件规则建立Mappings 定一个扩展方法AddDevMapperFilesusing AutoMapper;using Microsoft.Extensions.DependencyInjection;using System;using System.Collections.Generic;using System.Linq;using System.Reflection;using System.Text;using System.Threading.Tasks;namespace Dev.WooNet.AutoMapper.Extend{   public static class Mappings    {              /// <summary>        ///映射文件        /// </summary>        /// <param name="service"></param>        public static void AddDevMapperFiles(this IServiceCollection service)        {            var allType =          Assembly             .GetEntryAssembly()//获取默认程序集             .GetReferencedAssemblies()//获取所有引用程序集             .Select(Assembly.Load)             .SelectMany(y => y.DefinedTypes)             .Where(type => typeof(IProfile).GetTypeInfo().IsAssignableFrom(type.AsType()));            service.AddAutoMapper(allType.ToArray());                    }    }}步骤4:Startup 的ConfigureServices进行注册services.AddDevMapperFiles();(上面扩展方法)步骤5:应用 在控制器注入 IMapperprivate IMapper _IMapper { get; set; }然后 var deptinfo = _IMapper.Map<DevDepartment>(departData);这样就完成了AutoMapper使用

(0)

相关推荐

  • ASP.NET Core扩展库

    亲爱的.Neter们,在我们日复一日的编码过程中是不是会遇到一些让人烦恼的事情: 日志配置太过复杂,各种模板.参数也搞不清楚,每次都要去查看日志库的文档,还需要复制粘贴一些重复代码,好无赖 当需要类型 ...

  • .NET5 开发手机提词应用,基于内嵌Web服务器及PowerPoint自动化

    今天 以下文章来源于杨中科 ,作者杨中科 项目说明 我使用电脑录制视频教程的时候,会展示PPT给观众,同时也有一些提示性的文字给我自己看.这就类似于很多电视节目录制现场的"提词器" ...

  • .Net5 WPF快速入门系列教程

    dotNET跨平台 今天 一.概要 在工作中大家会遇到需要学习新的技术或者临时被抽调到新的项目当中进行开发.通常这样的情况比较紧急没有那么多的时间去看书学习.所以这里向wpf技术栈的开发者分享一套wp ...

  • NET5 ORM 六大新功能 - SqlSugar 5.0.2.7

    介绍 SqlSugar是一款 老牌 .NET 开源ORM框架,并且在第一时间兼容.NET5,由果糖大数据科技团队维护和更新 ,Github star数仅次于EF 和 Dapper 优点: 简单易用.功 ...

  • 对象到对象映射-AutoMapper

    概述 AutoMapper 是一个对象-对象映射器,可以将一个对象映射到另一个对象. 用来解决一个看似复杂的问题,这种类型的代码编写起来相当枯燥乏味, 官网地址: http://automapper. ...

  • 【C#】AutoMapper 使用手册

    本文基于 AutoMapper 9.0.0 AutoMapper 是一个对象-对象映射器,可以将一个对象映射到另一个对象. 官网地址:http://automapper.org/ 官方文档:https ...

  • [开源地址] 放弃Flink,.NET5.0开发CSharpFlink,简要设计、部署及二次开发说明。

    [开源地址] 放弃Flink,.NET5.0开发CSharpFlink,简要设计、部署及二次开发说明。

  • .net5+nacos+ocelot 配置中心和服务发现实现

    最近一段时间 因公司业务需要,需要使用.net5做一套微服务的接口,使用nacos 做注册中心和配置中心,ocelot做网关. 因为ocelot 支持的是consol和eureka,如果使用nacos ...

  • DotNetty关键概念及简单示例(基于NET5)

    目录 DotNetty关键概念及简单示例(基于NET5) 3.1 服务端代码示例 3.2 客户端代码示例 3.1.1 服务端配置 3.1.2 服务端处理逻辑代码 3.2.1 客户端服务配置 3.2.2 ...

  • 2、Automapper安装及配置

    一. 安装 我们安装是在 vs 中使用Nuget的方式进行安装 不过安装时需注意一件事情就是,版本问题,我示例使用的是.net framework 4.5.2,所以我安装AutoMapper的版本是7 ...