From 0a2353d7380046d0ec65ec40ddcc27063b529d40 Mon Sep 17 00:00:00 2001 From: Manuel Date: Mon, 1 Sep 2025 23:14:57 +0200 Subject: [PATCH] =?UTF-8?q?a=C3=B1ade=20automapper?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- back/Infrastructure/AutoMapperProfile.cs | 20 ++++++++++++++++++++ back/Program.cs | 9 +++++++++ 2 files changed, 29 insertions(+) create mode 100644 back/Infrastructure/AutoMapperProfile.cs diff --git a/back/Infrastructure/AutoMapperProfile.cs b/back/Infrastructure/AutoMapperProfile.cs new file mode 100644 index 0000000..7c11001 --- /dev/null +++ b/back/Infrastructure/AutoMapperProfile.cs @@ -0,0 +1,20 @@ +using AutoMapper; + +namespace back.Infrastructure; + +public class AutoMapperProfile : Profile +{ + public AutoMapperProfile() + { + //CreateMap() + // .ForMember(dest => dest.UserId, opt => opt.MapFrom(src => src.UserId)) + // .ForMember(dest => dest.FirstName, opt => opt.MapFrom(src => src.FirstName)) + // .ForMember(dest => dest.LastName, opt => opt.MapFrom(src => src.LastName)) + // .ForMember(dest => dest.Email, opt => opt.MapFrom(src => src.Email)) + // .ForMember(dest => dest.BirthYear, opt => opt.MapFrom(src => src.Birthday.Year)) + // .ForMember(dest => dest.BirthMonth, opt => opt.MapFrom(src => src.Birthday.Month)) + // .ForMember(dest => dest.BirthDay, opt => opt.MapFrom(src => src.Birthday.Day)) + // .ForMember(dest => dest.OccupationName, opt => opt.Ignore()) + + } +} diff --git a/back/Program.cs b/back/Program.cs index c2cc34f..ad6d266 100644 --- a/back/Program.cs +++ b/back/Program.cs @@ -1,5 +1,7 @@ using Autofac.Extensions.DependencyInjection; +using AutoMapper; using back.Domain; +using back.Infrastructure; using MCVIngenieros.Healthchecks; using MediatR.Extensions.FluentValidation.AspNetCore; using Microsoft.EntityFrameworkCore; @@ -55,6 +57,13 @@ public class Program }); builder.Services.AddFluentValidation([typeof(Program).Assembly]); + builder.Services.AddAutoMapper(opts => + { + opts.AddProfile(); + opts.AllowNullCollections = true; + opts.AllowNullDestinationValues = true; + opts.DestinationMemberNamingConvention = new PascalCaseNamingConvention(); + }); builder.Services.AddHealthChecksSupport().DiscoverHealthChecks(); builder.Services.AddLogging();