美文网首页
.NET Core中使用AutoMapper

.NET Core中使用AutoMapper

作者: 峰_e901 | 来源:发表于2019-02-24 20:35 被阅读0次

开发环境.NET CORE2.2.0

AutoMapper所需NuGet包:AutoMapper(8.0),AutoMapper.Extensions.Microsoft.DependencyInjection(6.0.0)

创建好.Net Core WebApi项目之后安装AutoMapper所需的NuGet包,我选择的是在ConfigureServices中静态的初始化AutoMapper

1.首先新增一个集成Profile的类

public class PermissionProfile: Profile

{

    public PermissionProfile()

     {

          //SourceMemberNamingConvention = new LowerUnderscoreNamingConvention();

           //DestinationMemberNamingConvention = new PascalCaseNamingConvention();

           CreateMap<Permission, PermissionDto>();

      }

}

2.在Status.cs文件ConfigureServices中配置静态初始化

public IServiceProvider ConfigureServices(IServiceCollection services)

{

        services.Configure<DbOption>(Configuration.GetSection("DbOpion"));

       services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);

       Mapper.Initialize(cfg => cfg.AddProfiles(typeof(PermissionProfile)));

       services.AddMvc();

}

3.在Controll中直接映射即可

[Route("api/[controller]")]

public class PermissionController : Controller

{

              private readonly IPermissionService _permissionService;

              public PermissionController(IPermissionService permissionService)

             {

               _permissionService = permissionService;

             }

            // GET: api/<controller>

           [HttpGet] public IActionResult Get()

           {

               var result = Mapper.Map<List<PermissionDto>>(_permissionService.GetPermissionAll());

                return Ok(result);

            }

}

相关文章

网友评论

      本文标题:.NET Core中使用AutoMapper

      本文链接:https://www.haomeiwen.com/subject/qxgbyqtx.html