1、安装automapper nuget包。

2、新建一个AutoMapper配置类并实现一个静态配置方法。

方法一、

  1. using AutoMapper;
  2. using AutoMapperTest.Models;
  3.  
  4. namespace AutoMapperTest.App_Start
  5. {
  6. public class AutoMapperConfig
  7. {
  8. public static void Config()
  9. {
  10. Mapper.Initialize(cfg =>
  11. {
  12. cfg.CreateMap<StudentEntity, StudentOutput>();
  13. });
  14. }
  15. }
  16. }

方法二、AddProfile方式

  1. using AutoMapper;
  2. using AutoMapperTest.Models;
  3.  
  4. namespace AutoMapperTest.App_Start
  5. {
  6. public class AutoMapperConfig
  7. {
  8. public static void Config()
  9. {
  10. Mapper.Initialize(cfg =>
  11. {
  12. cfg.AddProfile<MapperProfile>();
  13. });
  14. }
  15. }
  16. }
  1. using AutoMapper;
  2. using AutoMapperTest.Models;
  3.  
  4. namespace AutoMapperTest.App_Start
  5. {
  6. public class MapperProfile : Profile
  7. {
  8. public MapperProfile()
  9. {
  10. CreateMap<StudentEntity, StudentOutput>();
  11. }
  12. }
  13. }

3、在全局配置Global.asax中引用配置方法。

  1. using AutoMapperTest.App_Start;
  2. using System.Web.Mvc;
  3. using System.Web.Optimization;
  4. using System.Web.Routing;
  5.  
  6. namespace AutoMapperTest
  7. {
  8. public class MvcApplication : System.Web.HttpApplication
  9. {
  10. protected void Application_Start()
  11. {
  12. AutoMapperConfig.Config();
  13. }
  14. }
  15. }

4、具体使用

  1. public JsonResult GetMapper()
  2. {
  3. //实例化实体List
  4. List<StudentEntity> StudentList = new List<StudentEntity>();
  5. //模拟数据
  6. StudentList.Add(new StudentEntity
  7. {
  8. Id = ,
  9. Age = ,
  10. Gander = "boy",
  11. Name = "WangZeLing",
  12. Say = "Only the paranoid survive",
  13. Score = 99M
  14. });
  15. //AuotMapper具体使用方法 将List<StudentOutput>转换为List<StudentOutput>
  16. List<StudentOutput> Output = AutoMapper.Mapper.Map<List<StudentOutput>>(StudentList);
  17. return Json(Output, JsonRequestBehavior.AllowGet);
  18. }

附:实体类、Output类

  1. public class StudentEntity
  2. {
  3. public int Id { get; set; }
  4. public string Name { get; set; }
  5. public int Age { get; set; }
  6. public string Gander { get; set; }
  7. public decimal Score { get; set; }
  8. public string Say { get; set; }
  9. }
  1. public class StudentOutput
  2. {
  3. public string Name { get; set; }
  4. public decimal Score { get; set; }
  5. public string Say { get; set; }
  6. }

附:AutoMapper GitHub

  1. https://github.com/AutoMapper/AutoMapper

.Net Mvc AutoMapper简单使用的更多相关文章

  1. Nancy和MVC的简单对比

    Nancy和MVC的简单对比 在上一篇的.NET轻量级MVC框架:Nancy入门教程(一)——初识Nancy中,简单介绍了Nancy,并写了一个Hello,world.看到大家的评论,都在问Nancy ...

  2. [.Net Core] 在 Mvc 中简单使用日志组件

    在 Mvc 中简单使用日志组件 基于 .Net Core 2.0,本文只是蜻蜓点水,并非深入浅出. 目录 使用内置的日志组件 简单过渡到第三方组件 - NLog 使用内置的日志 下面使用控制器 Hom ...

  3. 转载 mvc:message-converters简单介绍 https://www.cnblogs.com/liaojie970/p/7736098.html

    mvc:message-converters简单介绍 说说@ResponseBody注解,很明显这个注解就是将方法的返回值作为reponse的body部分.我们进一步分析下这个过程涉及到的内容,首先就 ...

  4. 用Spring MVC开发简单的Web应用程序

    1 工具与环境 借助Eclipse4.3 + Maven3.0.3构建Java Web应用程序.使用Maven内置的servlet 容器jetty,不需手工集成Web服务器到Eclipse.还帮我们自 ...

  5. Spring MVC之简单入门

    一.Spring MVC简介: 1.什么是MVC 模型-视图-控制器(MVC)是一个众所周知的以设计界面应用程序为基础的设计模式.它主要通过分离模型(Model).视图(View)及控制器(Contr ...

  6. MVC CodeFirst简单的创建数据库(非常详细的步骤)

       最近在学习MVC的开发,相信有过开发经验的人初学一个新的框架时候的想法跟我一样最关心的就是这个框架如何架构,每个架构如何分工,以及最最关键的就是如何与数据库通信,再下来才是学习基础的页面设计啊等 ...

  7. EasyUI+MVC+EF简单用户管理Demo(问题及解决)

    写在前面 iframe-src EntityFramework版本 connectionStrings View.Action.页面跳转 EasyUI中DataGrid绑定 新增.修改和删除数据 效果 ...

  8. .NET轻量级MVC框架:Nancy入门教程(二)——Nancy和MVC的简单对比

    在上一篇的.NET轻量级MVC框架:Nancy入门教程(一)——初识Nancy中,简单介绍了Nancy,并写了一个Hello,world.看到大家的评论,都在问Nancy的优势在哪里?和微软的MVC比 ...

  9. (转)JAVA AJAX教程第四章—AJAX和MVC的简单结合

    这里我们再理解了AJAX后,开始来用实例感受AJAX的力量. 今天我最后要实现的效果,当鼠标放到图片上时会根据,会把数据库库里的数据读出,通过显示框显示出来.这个在很多网上商店都有用到这里效果,我们这 ...

随机推荐

  1. 【UI测试】--菜单位置

  2. Java SE学习【三】——JDBC

    最近学到了数据库与java的jdbc方面,还有个DAO模式,写一下自己的理解,后期有什么不对的再改. 一.数据库三范式的理解 记得以前上课时,也上了一学期的“数据库系统原理”,给我们上课的老师算是渣渣 ...

  3. .net上传文件,利用npoi读取文件信息到datatable里

    整理代码,.net上传文件,利用npoi读取文件到datatable里,使用了FileUpload控件,代码如下: protected void Button1_Click(object sender ...

  4. OpenSSH配置与基本使用

    SSH访问远程 SSH常见分类: telnet-远程登录协议,23/TCP 明文认证.明文传输(不安全) ssh(Secure SHell)-应用层协议,22/TCP 通讯和认证过程加密.主机认证 用 ...

  5. python中的open( )函数

    函数原型 open(file, mode=‘r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True) buff ...

  6. PHP连接SQLServer2012两例

    首先放上 PHP连接SQLServer的驱动下载地址 http://php.net/manual/zh/ref.pdo-sqlsrv.php 另外PHP for IIS管理工具 大家可以自己搜索一下 ...

  7. Windows事件日志报表 怎样备份数据库?

  8. 前端之javascript的数据类型1和BOM对象

    一 js对象 BOM对象:browser object model浏览器模型对象 window对象:定时器 DOM对象:文档对象模型 js对象:字符串对象,数组对象,日期对象,math对象 new关键 ...

  9. shell 查询oracle数据库

    一个需求,做个监控脚本,监控一个表,把数据拉出了,处理一下,组成一个新的脚本,并执行. 直接上脚本: #!/bin/bash VALUE=`sqlplus "scott/trigger@or ...

  10. 2019.01.22 uoj#14. 【UER #1】DZY Loves Graph(并查集)

    传送门 题意简述: 要求支持以下操作: 在a与b之间连一条长度为i的边(i是操作编号):删除当前图中边权最大的k条边:表示撤销第 i−1次操作,保证第1次,第i−1 次不是撤回操作. 要求在每次操作后 ...