automapper 不必多说 https://automapper.org

autofac 这里也不多说 https://autofac.org

这里主要 说 automapper 10.0 版本+autofac 在asp.net web api 的简单使用,因为automapper 更新很快每个版本的差别很大 ,网上查找的资料也比较杂而乱,找了好半天也找不出个好的

也没写过啥博文直接上干货

1.vs nuget 中搜索 automapper 安装

2.在项目中添加 此类 记得集成  Profile

public class MappingProfile : Profile
{
public MappingProfile()
{//此处是类与类的映射.... 这里就简单的举例一个

CreateMap<Core.Model.PO.admin, Models.Default.Admin>();
        }

    }

3.在autofac 中 注册  automapper

   public static void Register()
{
//得到你的HttpConfiguration.
var configuration = GlobalConfiguration.Configuration;
var builder = new ContainerBuilder();
//注册所有api控制器 构造函数注入
builder.RegisterApiControllers(Assembly.GetCallingAssembly()); // 注册auto mapper
var mapperConfiguration = new MapperConfiguration(cfg =>
{
cfg.AddProfile<MappingProfile>();//添加MappingProfile 实现映射的类
});
IMapper mapper = mapperConfiguration.CreateMapper();
builder.RegisterInstance(mapper).As<IMapper>().SingleInstance(); ...... 此处省去代码 100行
}

4.在控制器构造函数中 使用 IMapper

  public class DefaultController : ApiController
{
private readonly IMapper _mapper;
private readonly IAdminService _adminService;
public DefaultController(IMapper mapper, IAdminService adminService)
{
_mapper = mapper;
_adminService = adminService;
} [HttpGet,Filter.CustomActionFilter]
public IHttpActionResult user()
{
List<Core.Model.PO.admin> list = _adminService.GetList();
var customers = _mapper.Map<List<Admin>>(list); return Ok(new {code=0 ,data=customers });
}
}

automapper 10 +autofac+asp.net web api的更多相关文章

  1. Autofac ASP.NET Web API (Beta) Integration

    With the beta release of ASP.NET MVC 4 and the ASP.NET Web API being released a few weeks ago, I dec ...

  2. 对一个前端使用AngularJS后端使用ASP.NET Web API项目的理解(2)

    chsakell分享了一个前端使用AngularJS,后端使用ASP.NET Web API的项目. 源码: https://github.com/chsakell/spa-webapi-angula ...

  3. 使用Autofac在ASP.NET Web API上实现依赖注入

    在ASP.NET Web API里使用Autofac 1.通过NuGet安装Autofac.WebApi(当时安装的是Autofac 3.1.0) PM > Install-Package Au ...

  4. 在asp.net web api 2 (ioc autofac) 使用 Serilog 记录日志

    Serilog是.net里面非常不错的记录日志的库,另外一个我认为比较好的Log库是NLog. 在我个人的asp.net web api 2 基础框架(Github地址)里,我原来使用的是NLog,但 ...

  5. asp.net web api 2.2 基础框架(带例子)

    链接:https://github.com/solenovex/asp.net-web-api-2.2-starter-template 简介 这个是我自己编写的asp.net web api 2.2 ...

  6. 在一个空ASP.NET Web项目上创建一个ASP.NET Web API 2.0应用

    由于ASP.NET Web API具有与ASP.NET MVC类似的编程方式,再加上目前市面上专门介绍ASP.NET Web API 的书籍少之又少(我们看到的相关内容往往是某本介绍ASP.NET M ...

  7. 通过扩展让ASP.NET Web API支持JSONP

    同源策略(Same Origin Policy)的存在导致了"源"自A的脚本只能操作"同源"页面的DOM,"跨源"操作来源于B的页面将会被拒 ...

  8. 8 种提升 ASP.NET Web API 性能的方法

    ASP.NET Web API 是非常棒的技术.编写 Web API 十分容易,以致于很多开发者没有在应用程序结构设计上花时间来获得很好的执行性能. 在本文中,我将介绍8项提高 ASP.NET Web ...

  9. ASP.NET Web API 2.1支持Binary JSON(Bson)

    ASP.NET Web API 2.1内建支持XML.Json.Bson.form-urlencoded的MiME type,今天重点介绍下Bson.BSON是由10gen开发的一个数据格式,目前主要 ...

  10. ASP.NET Web API路由系统:路由系统的几个核心类型

    虽然ASP.NET Web API框架采用与ASP.NET MVC框架类似的管道式设计,但是ASP.NET Web API管道的核心部分(定义在程序集System.Web.Http.dll中)已经移除 ...

随机推荐

  1. 阿里云视频云vPaaS低代码音视频工厂:极速智造,万象空间

    当下音视频技术越来越广泛地应用于更多行各业中,但因开发成本高.难度系数大等问题,掣肘了很多企业业务的第二增长需求.阿里云视频云基于云原生.音视频.人工智能等先进技术,提供易接入.强拓展.高效部署和覆盖 ...

  2. Win 10 Rust Installtion in D Disk with VSCode

    (只记录了必须要内容,日后完善!) 1. rust的安装与环境变量: 要提前把下面两个环境变量配置好,这样是为了指定安装路径.否则会默认安装在 C 盘下. CARGO_HOME: D:\Soft\La ...

  3. AcWing 第 2 场周赛

    比赛链接:Here AcWing 3626. 三元一次方程 暴力即可 void solve() { int n; cin >> n; for (int i = 0; i <= n / ...

  4. ECharts大屏数据可视化展板项目 适配rem

    1.在utils文件夹里新建一个rem.js 2.main.js中引入rem.js 3.vscode中下载cssrem插件,配置Root Font Size大小,为1920/20 = 96. 重启vs ...

  5. Visual Studio实用的搜索、查找、替换技巧

    前言 对于.NET开发者而言Visual Studio是我们日常工作中比较常用的开发工具,掌握一些Visual Studio实用的搜索.查找.替换技巧可以帮助我们大大提高工作效率从而避免996. Vi ...

  6. 超全面总结Vue面试知识点,助力金三银四

    前言 本文会对Vue中一些常见的重要知识点以及框架原理进行整理汇总,意在帮助作者以及读者自测Vue的熟练度以及方便查询与复习.金三银四的到来,想必vue会是很多面试官的重点考核内容,希望小伙伴们读完本 ...

  7. 上下文中找不到org.springframework.boot.web.servlet.server.ServletWebServerFactory bean

    1.问题 报错如下: Description: Web application could not be started as there was no org.springframework.boo ...

  8. Latex常用数学符号输入方法

    引用CSDN博文 https://blog.csdn.net/qq_25368751/article/details/87888974

  9. 如何使用Oracle Enterprise Manager Database Express连接到PDB数据库

    1.问题 1.1重复弹出登录框,无法登陆 关闭登录框,显示invalid container name 1.2 重启后PDB数据库处于mounted挂载状态,未打开导致使用 Enterprise 登陆 ...

  10. Linux-网络-子网-子网掩码-网关-DNS解析