美文网首页
.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