Отвечая на мой собственный вопрос (частично):
AutoMapper имеет свойство конфигурации с именем AllowNullDestinationValues
, которое по умолчанию установлено на true
.Установив для этого значение false
, я получаю поведение, показанное в вопросе, например:
Mapper.Configuration.AllowNullDestinationValues = false;
//...
Source source = null;
Dest d = AutoMapper.Mapper.Map<Source, Dest>(source);
// d is now a new instance of Dest
Это решение работает нормально для простых типов, где типы источника и назначения хорошо отображаются.У меня все еще есть проблемы со сложными сопоставлениями (я обновлю вопрос, чтобы показать пример).