mirror of
https://github.com/farcasclaudiu/PracticeCalendar.git
synced 2026-06-22 07:01:16 +03:00
@@ -1,6 +1,9 @@
|
||||
using MapsterMapper;
|
||||
using Mapster;
|
||||
using MapsterMapper;
|
||||
using MediatR;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using PracticeCalendar.Application.PracticeEvents.Queries;
|
||||
using PracticeCalendar.Domain.Entities;
|
||||
using System.Reflection;
|
||||
|
||||
namespace PracticeCalendar.Application
|
||||
@@ -9,10 +12,25 @@ namespace PracticeCalendar.Application
|
||||
{
|
||||
public static IServiceCollection AddApplicationServices(this IServiceCollection services)
|
||||
{
|
||||
services.AddSingleton<IMapper>(new Mapper(new Mapster.TypeAdapterConfig()));
|
||||
services.AddMapsterMappings();
|
||||
services.AddMediatR(Assembly.GetExecutingAssembly());
|
||||
|
||||
return services;
|
||||
}
|
||||
|
||||
private static IServiceCollection AddMapsterMappings(this IServiceCollection services)
|
||||
{
|
||||
TypeAdapterConfig.GlobalSettings.Default.MapToConstructor(true);
|
||||
TypeAdapterConfig.GlobalSettings.NewConfig<PracticeEventDto, PracticeEvent>()
|
||||
.ConstructUsing(src => new PracticeEvent(src.Title, src.Description, src.StartTime, src.EndTime));
|
||||
|
||||
var mapsterConfig = new TypeAdapterConfig();
|
||||
mapsterConfig.NewConfig<PracticeEventDto, PracticeEvent>()
|
||||
.MapToConstructor(true)
|
||||
.ConstructUsing(src => new PracticeEvent(src.Title, src.Description, src.StartTime, src.EndTime));
|
||||
services.AddSingleton<IMapper>(new Mapper(mapsterConfig));
|
||||
|
||||
return services;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user