当前位置: 代码迷 >> 综合 >> .net core3.1 AutoMapper
  详细解决方案

.net core3.1 AutoMapper

热度:21   发布时间:2024-02-07 19:16:50.0

1.添加nuget包

AutoMapper.Extensions.Microsoft.DependencyInjection

2.startup.cs

using AutoMapper;
using System;
//...
services.AddAutoMapper(AppDomain.CurrentDomain.GetAssemblies());

3.新建文件夹Profile(配置映射),新建studentprofile.cs

public class studentprofile:Profile//继承Automapper的Profile{public studentprofile(){CreateMap<Student, studentdto>().ForMember(dest=>dest.xingbie//目标属性名xingbie, opt=>opt.MapFrom(a=>a.sex));//远属性名sex}}

实体类试例

[Table("Student")]public class Student{[Key]public int sid { get; set; }public int sex { get; set; }public int cid { get; set; }}//...
public  class studentdto{public int sid { get; set; }public int xingbie { get; set; }}

4.Controllers


private readonly Istudent _stu;private readonly IMapper _map;public TestController(Istudent istudent,IMapper map){_stu = istudent;_map = map;}[HttpGet]public List<studentdto> Get(){return _map.Map<List<studentdto>>(_stu.find());//}