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? 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 }));
|
.ForMember(dest => dest.Others, opt => opt.MapFrom(src => new string?[] { src.State2, src.State3, src.State4 }));
|
||||||
|
|
||||||
CreateMap<TfFile, TfFileDto>()
|
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