2013-09-16 2 views
4

Очень редкое приложение MVC 3 имеет следующее исключение. Это только в режиме Release, и при запуске запускается только перезапуск пула приложений IIS. Кто-нибудь может дать мне подсказку, что может вызвать эту ошибку?Странное исключение в MVC

И исключение:

System.NullReferenceException: Object reference not set to an instance of an object. 
    at System.Web.Mvc.FilterProviderCollection.<RemoveDuplicates>d__b.MoveNext() 
    at System.Linq.Buffer`1..ctor(IEnumerable`1 source) 
    at System.Linq.Enumerable.<ReverseIterator>d__a0`1.MoveNext() 
    at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext() 
    at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection) 
    at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source) 
    at System.Web.Mvc.FilterInfo..ctor(IEnumerable`1 filters) 
    at System.Web.Mvc.ControllerActionInvoker.GetFilters(ControllerContext controllerContext, ActionDescriptor actionDescriptor) 
    at System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName) 
    at System.Web.Mvc.Controller.ExecuteCore() 
    at System.Web.Mvc.ControllerBase.Execute(RequestContext requestContext) 
    at System.Web.Mvc.MvcHandler.<>c__DisplayClass6.<>c__DisplayClassb.<BeginProcessRequest>b__5() 
    at System.Web.Mvc.Async.AsyncResultWrapper.<>c__DisplayClass1.<MakeVoidDelegate>b__0() 
    at System.Web.Mvc.MvcHandler.<>c__DisplayClasse.<EndProcessRequest>b__d() 
    at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() 
    at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) 
+0

Показать ваш код .. –

+3

@ SonerGönül какой часть? Все решения? Это исключение показывает трассировку стека из исходного кода ASP.NET asp.net. –

+1

И вы писали или использовали какие-либо ActionFilters? Вы знаете, откуда берется RemoveDuplicates? –

ответ

1

Похоже, вы изменяете коллекцию GlobalFilters без замка. Это может произойти при доступе к этой коллекции, например, из файла IHttpModule.Init, который вызывается для каждого HttpApplication, созданного средой выполнения. Если бы эта проблема была однажды.

Используйте WebActivator или просто Global_asax App_Start для создания таких глобальных коллекций.

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