完成更新设备的测试
This commit is contained in:
@@ -17,10 +17,22 @@ public class MappingProfile : Profile
|
||||
.ForMember(dest => dest.VariableTables, opt => opt.Ignore());
|
||||
|
||||
CreateMap<UpdateDeviceDto, Device>()
|
||||
// 1. 首先,忽略那些永远不应从DTO更新的属性
|
||||
.ForMember(dest => dest.Id, opt => opt.Ignore())
|
||||
.ForMember(dest => dest.Description, opt => opt.Ignore())
|
||||
.ForMember(dest => dest.VariableTables, opt => opt.Ignore())
|
||||
.ForMember(dest => dest.CpuType, opt => opt.Ignore())
|
||||
.ForMember(dest => dest.DeviceType, opt => opt.Ignore());
|
||||
.ForMember(dest => dest.DeviceType, opt => opt.Ignore())
|
||||
|
||||
// 2. 然后,为每个可空属性单独设置条件
|
||||
.ForMember(dest => dest.Name, opt => opt.Condition(src => src.Name != null))
|
||||
.ForMember(dest => dest.Protocol, opt => opt.Condition(src => src.Protocol.HasValue))
|
||||
.ForMember(dest => dest.IpAddress, opt => opt.Condition(src => src.IpAddress != null))
|
||||
.ForMember(dest => dest.Port, opt => opt.Condition(src => src.Port.HasValue))
|
||||
.ForMember(dest => dest.Rack, opt => opt.Condition(src => src.Rack.HasValue))
|
||||
.ForMember(dest => dest.Slot, opt => opt.Condition(src => src.Slot.HasValue))
|
||||
.ForMember(dest => dest.OpcUaServerUrl, opt => opt.Condition(src => src.OpcUaServerUrl != null))
|
||||
.ForMember(dest => dest.IsActive, opt => opt.Condition(src => src.IsActive.HasValue));
|
||||
|
||||
CreateMap<Device, DeviceDto>()
|
||||
.ForMember(dest => dest.Protocol, opt => opt.MapFrom(src => src.Protocol.ToString()))
|
||||
|
||||
Reference in New Issue
Block a user