2012-02-17 3 views
0

Я использую AutoMapper на своем веб-сайте. Он отлично работает, но примерно раз в две недели я получаю желтую страницу (см. Ниже трассировку стека), и единственный способ разрешить это - перезапустить сайт (повторно использовать пул приложений). Версия AutoMapper: 2.0.9999 (как видно из свойств файла).AutoMapper «блокирует» сайт и бросает IndexOutOfRangeException

Любые идеи, что это может быть вызвано? Является ли это отказом на этапе конфигурации (который происходит один раз)?

[IndexOutOfRangeException: Index was outside the bounds of the array.] 
    System.Collections.Generic.Enumerator.MoveNext() +75 
    System.Linq.Enumerable.FirstOrDefault(IEnumerable`1 source, Func`2 predicate) +166 
    AutoMapper.ConfigurationStore.FindExplicitlyDefinedTypeMap(Type sourceType, Type destinationType) +147 
    AutoMapper.ConfigurationStore.FindTypeMap(Object source, Type sourceType, Type destinationType, String profileName) +169 
    AutoMapper.ConfigurationStore.FindTypeMapFor(Object source, Type sourceType, Type destinationType) +279 
    AutoMapper.MappingEngine.Map(Object source, Type sourceType, Type destinationType) +71 
    AutoMapper.MappingEngine.Map(TSource source) +190 
    AutoMapper.Mapper.Map(TSource source) +105 
    WowReforge.ViewModels.ReforgeViewModel.LoadToonGear(IDictionary`2 gear, IDictionary`2 itemsRefInfo) +307 
    ... 

ответ

1

Глядя на System.Linq.Enumerable FirstOrDefault в ILSpy, есть призыв к IEnumerator.MoveNext, как это указано в StackTrace, что вы предоставили. Но это не указывает, какая реализация IEnumerator это. Из этого трудно сказать, что может произойти в MoveNext.

Каковы объекты, участвующие в картографии? Какие типы коллекций вы используете?

Если вы используете реализацию собственного IEnumerator, может быть, что вы делаете что-то неправильно при предоставлении значения Current или вычисления индексов неправильно в методе MoveNext?

+0

no изготовленный под заказ перечислитель. Я настраиваю AutoMapper, а затем вызываю .Map; ничего сложного. –

+0

без дополнительной информации трудно сказать. что говорит ИИС? темы ОК? –

Смежные вопросы