using AutoMapper; using MTWireGuard.Application.Models.Mikrotik; namespace MTWireGuard.Application.Mapper { public class ServerMapping : Profile { public ServerMapping() { /* * Convert Mikrotik Server Model to ViewModel */ CreateMap() .ForMember(dest => dest.Id, opt => opt.MapFrom(src => Convert.ToInt32(src.Id.Substring(1), 16))) .ForMember(dest => dest.IsEnabled, opt => opt.MapFrom(src => !src.Disabled)); /* * Convert Wrapper CreateModel to Rest-API CreateModel */ CreateMap() .ForMember(dest => dest.Disabled, opt => opt.MapFrom(src => !src.Enabled)); /* * Convert Wrapper UpdateModel to Rest-API UpdateModel */ CreateMap() .ForMember(dest => dest.Id, opt => opt.MapFrom(src => $"*{src.Id:X}")); } } }