.net Core 使用AutoMapper
在我们的项目中慢慢的要把数据库的实体模型和视图模型进行分离,防止被人拿到我们表字段。在学校的时候自己只是有将很多数据库模型,写成一个视图模型返回到前台。

首先我们把这两个包引入项目中去。
然后我们创建一个转换配置类,这个类要继承 Profile 将我们需要转换的类写到我们构造函数里面去,这里要注意我们左边的UserEntity是要将这个类型的数据转换成UserModel
当然这个可以反过来,但是你转换的关系一定要正确,左为要转换的数据类型,右边是转换后的数据类型。(我已经帮你们测试了,关系不对乱转报错。)

在Startup 写入注入这个配置

下面我们创建两个类
这个是我们平常中数据库表实体

这是我们的视图模型

这个里要注意,在转化的时候只有名字相同的字段才会成功附上对应的值。(大小写可以不管,但是在项目中要做到一致,我上面没有一致是测试一下。)
然后就是使用了
我们只要在使用的地方,注入进来了,就可以使用了。

这个是单个实体的转换

简写方法,直接写要转成什么类型就可以了,但是转换的配置类法不变。

当然我们还有集合的转换了

好了使用就是这样,我之前也使用反射做过类似的功能。后面我整理一个,写一个使用反射写一个自己的。
.net Core 使用AutoMapper的更多相关文章
- ASP.NET Core教程:ASP.NET Core使用AutoMapper
一.前言 在实际的项目开发过程中,我们使用各种ORM框架可以使我们快捷的获取到数据,并且可以将获取到的数据绑定到对应的List<T>中,然后页面或者接口直接显示List<T>中 ...
- .net core中automapper的使用
automapper 是将两个类中的相同字段进行映射,也可以指定字段进行映射:将 UserDao的id 映射为 User 的age CreateMap<UserDao, User>() . ...
- .net core启用 autoMapper
启用 autoMapper autoMapper 基于约定的对象映射器 目录 安装包 添加服务 书写映射关系 安装包 需要安装两个包:AutoMapper和AutoMapper.Extensi ...
- .net core使用AutoMapper
AutoMapper文档:http://docs.automapper.org/en/stable/The-MyGet-build.html 新的版本抛弃了静态API方法,我们将使用依赖注入来完成. ...
- .Net Core使用AutoMapper做对象关系映射
我想很多后端开发者,纠结于如何在Dto及表实体中做属性关系映射,因为真的太繁琐了., ⒈如何使用? Mapper.Initialize(cfg => cfg.CreateMap<Users ...
- .NET Core应用框架AA介绍(二)
AA的开源地址 https://github.com/ChengLab/AAFrameWork AA框架是一个基础应用框架,是建立在众多大家熟知的流行工具之上并与之集成.比如:ASP.NET Core ...
- Getting A Mime Type From A File Name In .NET Core
Getting a mime type based on a file name (Or file extension), is one of those weird things you never ...
- 使用ASP.NET Core构建RESTful API的技术指南
译者荐语:利用周末的时间,本人拜读了长沙.NET技术社区翻译的技术标准<微软RESTFul API指南>,打算按照步骤写一个完整的教程,后来无意中看到了这篇文章,与我要写的主题有不少相似之 ...
- 《进击吧!Blazor!》第一章 1.初识 Blazor
作者介绍 陈超超 Ant Design Blazor 项目贡献者 拥有十多年从业经验,长期基于.Net技术栈进行架构与开发产品的工作,Ant Design Blazor 项目贡献者,现就职于正泰集团 ...
随机推荐
- 历史上的今天接口api
ip地址查询 www.ipip5.com 为大家提供历史上的今天接口api,提供txt和json两种返回格式. 1.txt文本格式 http://www.ipip5.com/today/api.p ...
- CSDN Markdown编辑器插入代码块时不能代码高亮
当我们点击插入代码块按钮,会提示我们在这里插入代码片,我们在三个单引号对之间输入代码后发现并没有实现代码块高亮, 如下图所示: <!DOCTYPE html> <html lang= ...
- vue-cli4.0脚手架安装
10月16日,官方发布消息称Vue-cli 4.0正式版发布,并且强烈建议升级;小编也是刚刚安装了最新版本的脚手架看看更新了什么 安装和vue-cli3.0的是一模一样的,对比了一下3.0的脚手架,除 ...
- 【Web前端开发】---自学转行roadmap
[Web前端开发] 自学转行roadmap: ● html/css ● 京东项目实操 ● javascript 基础 ● webapi ● javascrip高级 ● jquery基础 ● Ajax ...
- GPS NMEA-0183标准详解
NMEA - 0183 是美国国家海洋电子协会(National Marine Electronics Association)为海用电子设备制定的标准格式.目前业已成了 GPS/北斗导航设备统一的 ...
- confluence 挖矿木马应急响应
最近遇到一台confluence wiki主机被挖矿,收到CPU 告警异常之后,登录查看,进行分析. top c 命令查看,果然CPU 已经资源已经被吃完了.. 看到用户是confluence,100 ...
- 无法Google的解决方案
献给新入开发行业的小伙伴. 本文不会事无巨细的讲解每一个细节,只是为读者提供一个路线图,并提供相应的参考资料. 为了更高效的解决各种技术问题,有时不得不到墙外去寻找解决方案.每个开发者效率高了,宏观来 ...
- composer入门 一些简单常用的命令介绍
composer是什么 composer是PHP的插件依赖管理工具,我个人感觉和java的Maven.Gradle很类似. Windows OS下安装composer 参考: https://www. ...
- 【第二版】高仿Android网易云音乐企业级项目实战课程介绍
这是一门付费Android项目课程,我们只做付费课程:同时也感谢大家的支持. 这一节,对本课程做一个简单介绍,以及放一些项目效果图,如果想直接查看项目视频演示,可以直接在腾讯课堂查看[高仿Androi ...
- iOS 13 presentViewController
升级了iOS 13,发现代码中使用presentViewController的都变成了这样的,顶部留了一部分 查看present样式,iOS 13 默认自动适配,需要在present的时候,设置sty ...