using AutoMapper;
using System;
public class Source
{
public int Value { get; set; }
}
public class Destination
{
public bool IsPositive { get; set; }
}
public class PositiveValueConverter : IValueConverter
{
public bool Convert(int sourceMember, ResolutionContext context)
{
return sourceMember > 0;
}
}
class Program
{
static void Main(string[] args)
{
var config = new MapperConfiguration(cfg =>
{
cfg.CreateMap().ConvertUsing();
cfg.CreateMap()
.ForMember(dest => dest.IsPositive, opt => opt.Condition((src, dest) => src.Value != 0));
});
var mapper = config.CreateMapper();
var source = new Source { Value = 10 };
var destination = mapper.Map(source);
Console.WriteLine(destination.IsPositive); // Output: True
}
}