Я выполняю следующий фрагмент исходного кода и получить сообщение об ошибке:
Код: Выделить всё
try
{
UiLocation uiLocation = _mapper.Map(customerLocation);
}
catch (Exception ex1)
{
_logger.Error($"An exception happened .... Exception message=[{ex1.Message}]");
}
Код: Выделить всё
Error mapping types.
Mapping types:
CustomerLocation -> UiLocation
Company.Customer.Server.Domain.CustomerLocation -> Company.Customer.Class.UiLocation
Type Map configuration:
CustomerLocation -> UiLocation
Company.Customer.Server.Domain.CustomerLocation -> Company.Customer.Class.UiLocation
Destination Member:
Product
]
У меня этот код работает нормально, но при работе в системе клиента я вижу упомянутое сообщение об ошибке. Очевидно, что-то не так с отображением свойства Product, но что??? Может ли кто-нибудь указать мне направление?
(А пока понятно: исходный Продукт не найден: в БД заполнен идентификатор, но этот идентификатор не соответствует с реальным продуктом).
Обновление после некоторой информации:
Я добавил следующую строку (чтобы разрешить пустые направления):
Код: Выделить всё
var locationConfiguration = new MapperConfiguration(cfg =>
{
cfg.AllowNullDestinationValues = true; // This allows AutoMapper to return null for any destination properties if the source is null
cfg.CreateMap();
});
Что еще я могу сделать? иметь? (Источник не нулевой, но не найден: есть идентификатор, заполненный в БД, но нет числа, соответствующего этому идентификатору.
Что теперь?
Подробнее здесь: https://stackoverflow.com/questions/791 ... properties