首页 > 移动平台 > 详细

AutoMapper的配置

时间:2020-08-13 16:23:33      阅读:78      评论:0      收藏:0      [点我收藏+]

1,安装AutoMapper 和 Autofac

命令:

Install-package AutoMapper

Install-package Autofac

技术分享图片
 1 using Autofac;
 2 using AutoMapper;
 3 using AutoMapper.Configuration;
 4 using Morningstar.EquityFundamentals.Framework.Db.Chatbot;
 5 using Morningstar.EquityFundamentals.Model.Chatbot;
 6 
 7 namespace Morningstar.EquityFundamentals.Framework
 8 {
 9     public static class ContainerBuilderExtension
10     {
11         public static ContainerBuilder LoadAutoMapper(this ContainerBuilder builder)
12         {
13             builder.RegisterType<MapperConfigurationExpression>().SingleInstance();
14             builder.Register(m =>
15             {
16                 var mapperConfigurationExpression = m.Resolve<MapperConfigurationExpression>();
17                 var instance = new MapperConfiguration(mapperConfigurationExpression);
18                 return instance;
19             });
20             builder.Register(m =>
21             {
22                 var mapperConfiguration = m.Resolve<MapperConfiguration>();
23                 return mapperConfiguration.CreateMapper();
24             });
25             return builder;
26         }
27     }
28 
29     public class AutoMapperProfile : Profile
30     {
31         public void Mapping(ILifetimeScope scope)
32         {
33             var expression = scope.Resolve<MapperConfigurationExpression>();
34             expression.CreateMap<AppInfo, AppInfoDto>();
35         }
36     }
37 
38     public static class AutoMapperHelper
39     {
40         public static TDestination Map<TDestination>(object source)
41         {
42             ContainerBuilder builder = new ContainerBuilder();
43             builder.LoadAutoMapper();
44             builder.RegisterType<AutoMapperProfile>();
45             IContainer Container = builder.Build();
46 
47             using var scope = Container.BeginLifetimeScope();
48             scope.Resolve<AutoMapperProfile>().Mapping(scope);
49             return scope.Resolve<IMapper>().Map<TDestination>(source);
50         }
51     }
52 }
AutoMapperHelper

 

2,使用

技术分享图片

 

AutoMapper的配置

原文:https://www.cnblogs.com/shangec/p/13496507.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!