feat(TfFileDto): Icon durch IconUrl ersetzen und Mapping-Resolver hinzufügen
This commit is contained in:
parent
8c6202d7c0
commit
c952df5bb4
@ -10,5 +10,5 @@ public class TfFileDto
|
||||
|
||||
public string? Comment { get; set; }
|
||||
|
||||
public string? Icon { get; set; }
|
||||
public UriBuilder? IconUrl { get; set; }
|
||||
}
|
||||
@ -29,6 +29,7 @@ public class MappingProfile : AutoMapper.Profile
|
||||
.ForMember(dest => dest.Others, opt => opt.MapFrom(src => new string?[] { src.State2, src.State3, src.State4 }));
|
||||
|
||||
CreateMap<TfFile, TfFileDto>()
|
||||
.ForMember(dest => dest.Url, opt => opt.MapFrom<TfFileUriBuilderResolver>());
|
||||
.ForMember(dest => dest.Url, opt => opt.MapFrom<TfFileUriBuilderResolver>())
|
||||
.ForMember(dest => dest.Url, opt => opt.MapFrom<TfFileIconUriBuilderResolver>());
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,22 @@
|
||||
using AutoMapper;
|
||||
using System.Web;
|
||||
using WorkFlow.Application.Dto;
|
||||
using WorkFlow.Domain.Entities;
|
||||
|
||||
namespace WorkFlow.Application.Mapping;
|
||||
|
||||
public class TfFileIconUriBuilderResolver : IValueResolver<TfFile, TfFileDto, UriBuilder?>
|
||||
{
|
||||
private readonly UriBuilder _uriBuilder;
|
||||
|
||||
public TfFileIconUriBuilderResolver(UriBuilder uriBuilder) => _uriBuilder = uriBuilder;
|
||||
|
||||
public UriBuilder? Resolve(TfFile source, TfFileDto destination, UriBuilder? destMember, ResolutionContext context)
|
||||
{
|
||||
var builder = new UriBuilder(_uriBuilder.Uri)
|
||||
{
|
||||
Path = HttpUtility.UrlEncode(source.Icon)
|
||||
};
|
||||
return builder;
|
||||
}
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user