zoukankan      html  css  js  c++  java
  • .Net Mvc AutoMapper简单使用

    1、安装automapper nuget包。

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

    方法一、

    using AutoMapper;
    using AutoMapperTest.Models;
    
    namespace AutoMapperTest.App_Start
    {
        public class AutoMapperConfig
        {
            public static void Config()
            {
                Mapper.Initialize(cfg =>
                {
                    cfg.CreateMap<StudentEntity, StudentOutput>();
                });
            }
        }
    }

    方法二、AddProfile方式

    using AutoMapper;
    using AutoMapperTest.Models;
    
    namespace AutoMapperTest.App_Start
    {
        public class AutoMapperConfig
        {
            public static void Config()
            {
                Mapper.Initialize(cfg =>
                {
                    cfg.AddProfile<MapperProfile>();
                });
            }
        }
    }
    using AutoMapper;
    using AutoMapperTest.Models;
    
    namespace AutoMapperTest.App_Start
    {
        public class MapperProfile : Profile
        {
            public MapperProfile()
            {
                CreateMap<StudentEntity, StudentOutput>();
            }
        }
    }

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

    using AutoMapperTest.App_Start;
    using System.Web.Mvc;
    using System.Web.Optimization;
    using System.Web.Routing;
    
    namespace AutoMapperTest
    {
        public class MvcApplication : System.Web.HttpApplication
        {
            protected void Application_Start()
            {
                AutoMapperConfig.Config();
            }
        }
    }

    4、具体使用

            public JsonResult GetMapper()
            {
                //实例化实体List
                List<StudentEntity> StudentList = new List<StudentEntity>();
                //模拟数据
                StudentList.Add(new StudentEntity
                {
                    Id = 1,
                    Age = 12,
                    Gander = "boy",
                    Name = "WangZeLing",
                    Say = "Only the paranoid survive",
                    Score = 99M
                });
                //AuotMapper具体使用方法 将List<StudentOutput>转换为List<StudentOutput>
                List<StudentOutput> Output = AutoMapper.Mapper.Map<List<StudentOutput>>(StudentList);
                return Json(Output, JsonRequestBehavior.AllowGet);
            }

    附:实体类、Output类

        public class StudentEntity
        {
            public int Id { get; set; }
            public string Name { get; set; }
            public int Age { get; set; }
            public string Gander { get; set; }
            public decimal Score { get; set; }
            public string Say { get; set; }
        }
        public class StudentOutput
        {
            public string Name { get; set; }
            public decimal Score { get; set; }
            public string Say { get; set; }
        }

    附:AutoMapper GitHub 

    https://github.com/AutoMapper/AutoMapper
  • 相关阅读:
    HDU-4248 A Famous Stone Collector 组合数学 DP
    HDU
    暑期训练1 Gym
    暑期训练1 Gym-102623L Lottery Tickets 模拟 贪心构造
    暑期训练2 Gym
    poj-1011 sticks(搜索题)
    hdu-2553 N皇后问题(搜索题)
    poj-2236 wireless network(并查集)
    poj-1700 crossing river(贪心题)
    poj-3278 catch that cow(搜索题)
  • 原文地址:https://www.cnblogs.com/eedc/p/6857742.html
Copyright © 2011-2022 走看看