NullReferenceException с использованием AutoMapper и StructureMap - PullRequest
0 голосов
/ 03 октября 2011

Итак, я получаю исключение NullReferenceException на производственном сервере. Это не воспроизводится и происходит один раз в ~ 100 запросов.

Это код.

var userInfo = Mapper.Map<UserSubscribedEvent, UserInfo>(userSubscribedEvent);
var subscription = repository.GetActiveSubscriptionForUser(userInfo.UserId);

Исключение появляется во второй строке. Так что либо userInfo имеет значение null, либо это хранилище.

Репозиторий внедряется в класс из конструктора с использованием StructureMap, поэтому он действительно не должен быть нулевым (поскольку он обычно работает), а userInfo создается с использованием AutoMapper и также не должен быть нулевым.

Так что мой вопрос - может ли Mapper.Map вернуть ноль в AutoMapper, если да, то когда? Если нет, кто-нибудь испытывал, что StructureMap случайно вводит нулевые зависимости в конструктор? Если да, то можно ли этого избежать?

Спасибо!

Ответы [ 2 ]

1 голос
/ 03 октября 2011

Может ли Mapper.Map вернуть ноль в AutoMapper

Да.

если да, то когда?

Если выпередать ноль в качестве аргумента.В вашем случае это будет переменная userSubscribedEvent.

0 голосов
/ 03 октября 2011

решено: проблема была на самом деле в строке ниже, когда использовалось свойство подписки (смущенно), сервер работал с файлом, в верхней части которого была лишняя пустая строка. Там, где нет активных подписок, так как клиент отправил запрос сразу после закрытия активной подписки. : - /

Еще раз спасибо за вашу помощь и извините за то, что не проверяли мой собственный производственный код лучше.

...