Не понятно почему вылетает NullReferanceException
От: Flap Россия  
Дата: 28.01.09 09:29
Оценка:
Получаю вот такие строчки в логе моего приложения, которое развернуто у заказчика:

Process information:
    Process ID: 4136
    Process name: w3wp.exe
    Account name: NT AUTHORITY\NETWORK SERVICE

Exception information:
    Exception type: System.NullReferenceException
    Exception message: Object reference not set to an instance of an object.

Thread information:
    Thread ID: 7
    Thread account name: NT AUTHORITY\NETWORK SERVICE
    Is impersonating: False
    Stack trace:    at TNKBP_CPDB.Web.Core.Navigation.LocationControllerModule.context_AcquireRequestState(Object sender, EventArgs e) in c:\Work\Projects\бла, бла, бла\LocationControllerModule.cs:line 41
   at System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
   at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)


по этой строке в моем коде следующее:
39:   string requestExtension = Path.GetExtension(application.Context.Request.Path);
40:   //  обрабатываем только *.aspx запросы
41:   if (string.Compare(requestExtension, ".aspx", StringComparison.InvariantCultureIgnoreCase) != 0)
42:   {
43:   return;
44:   }


как на 41 строке может быть NullReferenceException?
Re: Не понятно почему вылетает NullReferanceException
От: cadet354 Россия
Дата: 28.01.09 09:57
Оценка:
Здравствуйте, Flap, Вы писали:



F>по этой строке в моем коде следующее:

F>
F>39:   string requestExtension = Path.GetExtension(application.Context.Request.Path);
F>40:   //  обрабатываем только *.aspx запросы
F>41:   if (string.Compare(requestExtension, ".aspx", StringComparison.InvariantCultureIgnoreCase) != 0)
F>42:   {
F>43:   return;
F>44:   }
F>


F>как на 41 строке может быть NullReferenceException?

Path.GetExtension(application.Context.Request.Path) вернул null, по его коду это возможно когда ему самому null подсунули.
посмотри если запрос имеет вид такой http://you_domain что вернет application.Context.Request.Path.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[2]: Не понятно почему вылетает NullReferanceException
От: Flap Россия  
Дата: 02.02.09 06:01
Оценка:
Здравствуйте, cadet354, Вы писали:

C>Здравствуйте, Flap, Вы писали:




F>>по этой строке в моем коде следующее:

F>>
F>>39:   string requestExtension = Path.GetExtension(application.Context.Request.Path);
F>>40:   //  обрабатываем только *.aspx запросы
F>>41:   if (string.Compare(requestExtension, ".aspx", StringComparison.InvariantCultureIgnoreCase) != 0)
F>>42:   {
F>>43:   return;
F>>44:   }
F>>


F>>как на 41 строке может быть NullReferenceException?

C>Path.GetExtension(application.Context.Request.Path) вернул null, по его коду это возможно когда ему самому null подсунули.
C>посмотри если запрос имеет вид такой http://you_domain что вернет application.Context.Request.Path.

да, он это может, но string.Compare корректно отрабатывает эту ситуацию. Пока натыал логирования, время покажет
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.