首页 > 编程语言 >在Asp

在Asp

时间:2024-05-12 11:31:13浏览次数:21  
标签:mapper Asp 映射 get set AutoMapper public

在Asp.Net Core中使用AutoMapper进行对象映射

怎样高效便捷的处理对象映射呢,我们可以使用AutoMapper来进行实体类到Dto

13.0以上的版本中,只需要安装AutoMapper包,在这之下的版本中还需要安装AutoMapper.Extensions.Microsoft.DependencyIn包。

1.添加一个profile,他需要继承Profile抽象类,在构造函数中创建映射:

public class Mapperfile:Profile
{
    public Mapperfile()
    {
        CreateMap<SparepartsStoragelocation, SparepartsStoragelocationDTO>();
    }
}

2.在program.cs文件中添加配置如下:

services.AddAutoMapper(cfg => {
    cfg.AddProfile<Mapperfile>();
});

3.在你需要他的地方注入他:

public class TestController{
    private readonly IMapper _mapper;
	public SparepartsStoragelocationController( IMapper mapper)
	{
   	 	_mapper = mapper;
	}
    public Method(){
        List<Dto> list = _mapper.Map<List<entity>, List<Dto>>(_data);
    }
}
public class entity
{
    public int ID { get; set; }
    public DateTime? CreateTime { get; set; }
    public string? Code { get; set; }
    public string? CreatePeople { get; set; }
    public bool? IsDelete { get; set; }
}
public record Dto(int ID,string Code,string CreatePeople, DateTime CreateTime);

你可以看到,我创建的映射是对象,而方法类内实际映射的是List集合,你只需要这么做即可

AutoMapper还支持这些:

  • IEnumerable
  • IEnumerable<T>
  • ICollection
  • ICollection<T>
  • IList
  • IList<T>
  • List<T>
  • Arrays

标签:mapper,Asp,映射,get,set,AutoMapper,public
From: https://www.cnblogs.com/ssz0312/p/18187615

相关文章

  • 在 WPF 中集成 ASP.NET Core 和 WebView2 用于集成 SPA 应用
    背景我们有些工具在Web版中已经有了很好的实践,而在WPF中重新开发也是一种费时费力的操作,那么直接集成则是最省事省力的方法了。修改项目文件我们首先修改项目文件,让WPF项目可以包含ASP.NETCore的库,以及引用WebView2控件。<ProjectSdk="Microsoft.NET.Sdk"><Pr......
  • windows安装metasploit,运行报错处理
    最近给几个windows11的系统安装了metasploit,其中有几个在启动msf时报错D:/metasploit-framework/embedded/framework/1ib/net/dns/resolver.rb:345:in'nameservers=':String,Wrongarguentformat,neitherString,ArraynorIPAddr(ResolverArgumentError)看起来像是dn......
  • Metasploit Pro 4.22.3-2024050201 (Linux, Windows) - 专业渗透测试框架
    MetasploitPro4.22.3-2024050201(Linux,Windows)-专业渗透测试框架Rapid7Penetrationtesting,ReleaseMay03,2024请访问原文链接:MetasploitPro4.22.3-2024050201(Linux,Windows)-专业渗透测试框架,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org世......
  • FTP主动模式和被动模式(2)- 防火墙对FTP的影响 ASPF
    防火墙对FTP的影响ASPF多通道协议应用层程序有些使用的是单通道协议,有些使用的是多通道协议。单通道协议例如http协议,整个协议交互过程中,服务端和客户端只建立一个连接,并且服务端固定使用一个端口,例如80端口,这种一般为单通道协议;防火墙一般都需要配置精细的安全策略对数据......
  • 一个开源的基于Asp.Net Mvc开发的个人博客系统项目
    项目简介这是一个基于Mvc5构建的简单、代码层级分明的开源个人博客系统。前端美观大气、后台采用RightControl.NET通用角色权限系统,开发简单、效率高。网站配置采用XML配置,灵活可以根据自己是需求进行个性化配置。系统功能完备,完全可以满足需求,基本不用二次开发,非常使用程序......
  • 2022年最新的Asp.Net程序员学习路线图
    给大家分享一个微软MVP整理的,2022年最新的Asp.Net程序员学习路线图。这个图的知识点,分为:1、个人必须掌握2、进一步学习3、兴趣4、其他5、可能需要学习。第1、2部分大家必须去掌握起来,其他的内容可以根据工作的需要、兴趣选择。 在Github已经针有人对路线图的每一个知识点......
  • 批量修改asp.net core 项目的解决方案的命名空间
    单个命名空间重命名:打开任何使用旧命名空间(例如:“OrchardCore”)的文件。右键点击命名空间名称,选择“重构”然后选择“重命名”。输入新的命名空间名称(例如:“SuperCore”),确保选中“预览更改”,然后点击“应用”。VisualStudio将显示所有受影响的引用,并让你确认修改。全局搜索......
  • ASP.NET Core Razor Pages 使用 视图(View) 组件
    参考文章地址:为什么要在ASP.NETCore中使用视图组件(telerik.com)为什么使用视图组件而不是分部视图?最大的原因是,在Razor页面中插入分部视图时,与调用View关联的所有ViewData都会自动与分部视图关联。这意味着分部视图在一个Razor页面上的行为可能与在另一个页面上的行......
  • Metasploit-即时入门(全)
    Metasploit即时入门(全)原文:annas-archive.org/md5/FDEA350254319975F23617766073DAB6译者:飞龙协议:CCBY-NC-SA4.0第一章. 快速入门Metasploit欢迎阅读《快速入门Metasploit》。本书特别为您提供了设置Metasploit所需的所有信息。您将学习Metasploit的基础知识,开始......
  • [MDP.AspNetCore] 實作OAuth協定SSO Server/Client專案範例
    團隊負責的系統變多的時候,使用SSOServer提供統一身分驗證,讓團隊只需要維護一份用戶資料及一個身分驗證服務。除了減少團隊維護成本之外,也讓使用者不用記憶多個站台的帳號密碼,提供更好的使用者體驗。本篇文章,介紹使用MDP.AspNetCore的NuGet套件,所建立的實作OAuth協定SSOServer/C......