2014-09-04 3 views
0

Я недавно начал работу над установленным MVC-приложением, используя VS2013. По какой-то причине HttpContext.Current имеет значение null только при запуске в режиме отладки. Если я удалю точки останова, это работает, но я не понимаю, почему это должно происходить локально.HttpContext.Current имеет значение null только при отладке

Это не только Chrome - до сих пор это также происходит при отладке через IE11.

Если это помогает, решение использует IIS Express в качестве веб-сервера dev.

public UserSessionData GetSession() 
{ 
    HttpSessionStateBase httpSession = new HttpSessionStateWrapper(HttpContext.Current.Session); 
} 
+1

Вы не показываете код, который дает нам очень мало работы. – Paddy

+2

Если бы вы могли предоставить более подробную информацию о том, где именно в конвейере приложения вы пытаетесь отладить объект «HttpContext», тогда мы сможем вам помочь. –

+1

Дело в том, что я не пытаюсь отлаживать HttpContext, это просто выкинут, когда этот метод называется: общественного UserSessionData GetSession() { HttpSessionStateBase HTTPSession = новый HttpSessionStateWrapper (HttpContext.Current.Session); – JimFR

ответ

0

Не держите Debugger в этой строке ->HttpSessionStateBase httpSession = new HttpSessionStateWrapper(HttpContext.Current.Session); После выполнения этой строки, то только значение будет присвоено этой переменной httpSession.

Итак, держите отладчик в этой строке ->}. Затем проверьте httpSession в QuickWatch или Mouse Hover.

Значение должно быть там. Нет, это не общий вопрос. Его человеческая ошибка/ошибка.

+0

правильный. это является симптомом другой проблемы в списке ошибок для этого приложения. Мой плохой: я новичок в VS2013 и новичок в этом приложении! :-p – JimFR

+0

@JimFR В порядке. +1 для вашей попытки и Добро пожаловать в переполнение стека. – RajeshKdev

+0

@ShaunWilson Проблема заключается в том, что пользователь не знает, как правильно отладить часть кода. Перед назначением значения 'httpSession' (либо оно может быть нулевым, либо может содержать некоторое значение). Он пытается проверить значение «httpSession». Так что это его ошибка. Перед назначением ничего не будет. Но все тот же код работает, когда он не отлаживает. Так что это была моя догадка. Поскольку он новичок в MVC. ** Он не сталкивается с Null Reference Exception **. Опубликованный ответ решает проблему его вопроса. Поэтому он принял это. :) – RajeshKdev

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