2013-03-11 3 views
0

더 이상 내 조직에서 근무하지 않는 사람이 작성한 ASP.net 웹 응용 프로그램에서 작업하고 있습니다.가끔 내 웹 응용 프로그램에서 Default.aspx가로드 될 때 세션이 손실됩니다.

이상한 버그를 발견했습니다. 간헐적 인 문제입니다.

응용 프로그램에 default.aspx라는 페이지가 있습니다. 때로는이 페이지가로드 될 때 전체 세션이 손실됩니다. 이 때 디버거에서 Session_Start 이벤트가 발생하는 것을 알 수 있습니다. 때로는 Session_End 이벤트도 발생하지만 매번 발생하지는 않습니다.

web.config에서 사용자 정의 sessionState 구성을 찾았지만 제거해도 문제가 해결되지 않습니다.

Default.aspx는 System.Web.UI.Page를 직접 상속하며 Page_Load 이외의 이벤트는 정의하지 않습니다.

프로젝트에 global.asax가 없습니다.

무엇이 좌절감을 유발할 수 있습니까?

업데이트 : Visual Studio 2010의 기본 제공 서버에서 응용 프로그램을 실행할 때이 문제가 발생합니다. IIS가 내 워크 스테이션에 설치되어 있지 않습니다.

+0

IIS에서 자체 응용 프로그램 풀에서 실행되고 있는지 또는 기본 응용 프로그램 풀에서 실행 중인지 알고 있습니까? 앱 풀이 순환 할 때마다 "진행 중"(기본 - 세션 설정)을 사용하는 경우 모든 세션 정보를 잃게됩니다. 또한 사용자 정의 sessionState 섹션의 "모드"속성을 알려주시겠습니까? – jadarnel27

+0

브라우저에서 쿠키 ASP.NET_SessionId의 값을 확인할 수 있습니까? 그것은 그 가치를 지니고 있습니까? –

+0

@Malcolm, MSIE에서 디버거에 대해 F12 키를 누른 다음 Cache -> Cookie 정보보기를 선택하여 쿠키를 검사 해 보았습니다. 예상대로 쿠키를 만들었지 만 ASP.NET_SessionId는 표시되지 않습니다. –

답변

0

세션이 손실되는 시나리오를 발견했습니다 - asp.net 페이지에서 금액 텍스트 상자 필드에 잘못된 문자가 있고 다른 목적으로 세션 변수 검색이 뒤 따릅니다. 변환을 통해 잘못된 숫자 구문 분석을 게시 한 후 .ToInt32 또는 double은 첫 번째 기회 예외를 발생 시키지만 오류는 처리되지 않은 예외로 인해 null 인 세션 대신 세션 검색시 오류를 표시하여 디버깅을 속이는 것입니다 ...

희망 사항 도와주세요, HydTechie

1

세션 문제를 일으킬 수있는 잠재적 인 문제 (귀하의 경우에는 적용되지 않을 수도 있음)는 때때로 일부 IIS 관리자가 설정합니다. WebGarden으로 응용 프로그램 풀 (즉, 최대 작업자 프로세스> 1). 이것은 일반적인 헤어 풀링 시나리오입니다.

VS 2010을 사용하는 경우 VS 2010은 응용 프로그램을 시작할 때마다 "미니 IIS"를 시작합니다. 시스템 트레이 섹션에서 확인할 수 있습니다. 그리고 새로운 "ASP.Net 개발 서버"를 출시 할 때마다 새로운 세션입니다.

그냥 도와 드리려고합니다.

관련 문제