32 lines
1.5 KiB
C#
32 lines
1.5 KiB
C#
using AutoMapper;
|
|
using IM_API.Dtos;
|
|
using IM_API.Models;
|
|
|
|
namespace IM_API.Configs
|
|
{
|
|
public class MapperConfig:Profile
|
|
{
|
|
public MapperConfig()
|
|
{
|
|
CreateMap<User, UserInfoDto>();
|
|
//用户信息更新模型转换
|
|
CreateMap<UpdateUserDto, User>()
|
|
.ForMember(dest => dest.Updated,opt => opt.MapFrom(src => DateTime.Now))
|
|
.ForAllMembers(opts => opts.Condition((src,dest,srcMember) => srcMember != null));
|
|
//用户注册模型转换
|
|
CreateMap<RegisterRequestDto, User>()
|
|
.ForMember(dest => dest.Username,opt => opt.MapFrom(src => src.Username))
|
|
.ForMember(dest => dest.Password,opt => opt.MapFrom(src => src.Password))
|
|
.ForMember(dest => dest.Avatar,opt => opt.MapFrom(src => "https://ts1.tc.mm.bing.net/th/id/OIP-C.dl0WpkTP6E2J4FnhDC_jHwAAAA?rs=1&pid=ImgDetMain&o=7&rm=3"))
|
|
.ForMember(dest => dest.StatusEnum,opt => opt.MapFrom(src => UserStatus.Normal))
|
|
.ForMember(dest => dest.OnlineStatusEnum,opt => opt.MapFrom(src => UserOnlineStatus.Offline))
|
|
.ForMember(dest => dest.NickName,opt => opt.MapFrom(src => src.NickName))
|
|
.ForMember(dest => dest.Created,opt => opt.MapFrom(src => DateTime.Now))
|
|
.ForMember(dest => dest.IsDeleted,opt => opt.MapFrom(src => 0))
|
|
;
|
|
//好友信息模型转换
|
|
CreateMap<Friend, FriendInfoDto>();
|
|
}
|
|
}
|
|
}
|