1. 程式人生 > 其它 >window環境下testlink環境搭建(xammp)

window環境下testlink環境搭建(xammp)

在.NET CORE中,我們可以使用AutoMapper來實現物件資料傳輸也就是Dto。

 1、需要安裝如下兩個包,通過Nuget安裝即可:

1 AutoMapper

2 AutoMapper.Extensions.Microsoft.DependencyInjection 

2、在Startup中新增AutoMapper:

services.AddAutoMapper();

3、建立AutoMapper對映規則,得告訴AutoMapper對映關係:

public class HosTesterProfile : AutoMapper.Profile
    {
        public
HosTesterProfile() { CreateMap<HosTester, HosTesterHis>().ForMember(x => x.Id, opt => opt.Ignore()) .ForMember(x => x.IsActive, opt => opt.MapFrom(src => true)) .ForMember(x => x.Name, opt => opt.MapFrom(src => src.BranchName)) .ForMember(x
=> x.Code, opt => opt.MapFrom(src => src.CjdBranceCode)) .ForMember(x => x.OutCode1, opt => opt.MapFrom(src => src.Id)) .ForMember(x => x.OutCode2, opt => opt.MapFrom(src => src.BranchCode)); } }

4、在你的Controller建構函式中注入你的IMapper:

public class SyncTesterToTesterHis 
{
     private readonly IMapper _mapper;
   public SyncTesterToTesterHis( IMapper mapper)
     {
      _mapper = mapper;
   }
}

5、單個物件轉Dto:

private Task Sync()
  {
        var hosTester=new HosTester(){
          Id=1,Name="張三"
       }
        var hostesterHis = _mapper.Map<HosTesterHis>(hosTester); 
}

6、集合轉Dto集合:

private Task Sync()
{
  var hosTester=new List<HosTester>
  {
    new HosTester(){Id=1,Name="張三"}
    new HosTester(){Id=2,Name="李四"}
  }
  var hostesterHis = _mapper.Map<List<HosTesterHis>>(hosTester);
}