I have ASP.Net Core 2.1 C#
application.
Below is my DTO
public class CustomerTO
{
public int Id { get; set;}
public DateTime SomeDate{get; set;}
}
Domain Class
public class Customer
{
public int Id { get; set;}
public string SomeDate{get; set;}
}
AutoMapper Class
public class ObjectsMapper
{
private readonly IMapper _mapper;
private const string _dateFormat = "yyyy’-‘MM’-‘dd’T’HH’:’mm’";
public ObjectsMapper()
{
var config = new MapperConfiguration(cfg =>
{
cfg.CreateMap<Customer, CustomerTO>()
.ForMember(dest => dest.SomeDate.ToString(_dateFormat), opt => opt.MapFrom(src => src.SomeDate))
.ForMember(dest => dest.SomeDate.ToString(_dateFormat), opt => opt.MapFrom(src => src.SomeDate));
cfg.CreateMap<CustomerTO, Customer>()
.ForMember(dest => dest.SomeDate, opt => opt.MapFrom(src => Convert.ToDateTime(src.SomeDate)))
.ForMember(dest => dest.SomeDate, opt => opt.MapFrom(src => Convert.ToDateTime(src.SomeDate)));
});
_mapper = config.CreateMapper();
}
public User Map(CustomerTO user) => _mapper.Map<CustomerTO, Customer>(customer);
}
But when the Map() is called from respective places, either it throws the below error or just stops the debugging/application with no error or output
[AutoMapperConfigurationException: Custom configuration for members is only supported for top-level individual members on a type.]
How do I handle this mapper (DateTime to String and vice-versa)?
Thanks!