Предположим, что у меня есть следующие сущности (классы)
public class Target
{
public string Value;
}
public class Source
{
public string Value1;
public string Value2;
}
Теперь я хочу настроить Auto Map, сопоставить Value1 с Value, если Value1 начинается с "A", но в противном случае я хочу сопоставить Value2 с Value.
Это то, что у меня есть до сих пор:
Mapper
.CreateMap<Source,Target>()
.ForMember(t => t.Value,
o =>
{
o.Condition(s =>
s.Value1.StartsWith("A"));
o.MapFrom(s => s.Value1);
<<***But then how do I supply the negative clause!?***>>
})
Однако часть, которую мне все еще ускользает, заключается в том, как сказать AutoMapper, чтобы перейти s.Value2
, если предыдущее условие завершится с ошибкой.
Мне просто кажется, что API не был спроектирован так хорошо, как это могло бы быть... но может быть, это недостаток знаний, мешающих мне.
Пожалуйста, помогите.