2009-03-31 1 views
1

Мы получаем странную ошибку на рабочем сервере. У нас есть трассировка стека, но нет номеров строк, поэтому я знаю метод, где ошибка, но не точная строка. Он жалуется на «Ссылка на объект, не установленную на экземпляр объекта». Что-то пусто.Может ли ASP.NET HttpRequest когда-либо быть нулевым? Как насчет CurrentExecutionFilePath?

Посмотрев на код, только два потенциальных преступников, что я могу видеть это две последовательные линии, которые считывают:

string currentPath = this.Request.CurrentExecutionFilePath; 
string[] parts = currentPath.Split('/'); 

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

ответ

2

У вас есть выход PDB включен для вашей сборки релиза?

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

(PDB и DLLs должны соответствовать)

+0

Мне нужно будет проверить строение супер ... не уверен, что он делает, или если у него будут какие-то ограничения на это. Но идея звучит. – Beska

2

Как ни странно, я видел ошибку HttpRequest (много раз) на производственном сервере, не имея возможности узнать причину.

Я знаю, что это не имеет смысла для вас вообще, но я просто пишу из солидарности :)

Один потенциал, что я наполовину помню делать с IIS не отображающая корня к /Default.aspx но опять , это было давно, поэтому, пожалуйста, не обращайте слишком много внимания на эти потенциальные бесполезные бред!

+0

Фактически, это полезно ... Я не был уверен, что это может произойти, поэтому наличие независимой проверки, что это может быть полезно. Благодарю. – Beska

3

просьбе и/или HttpContext может быть пустым, если вы запускаете темы с вашего первого. (Асинхронная обработка и т. Д.)

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