2012-12-06 2 views
1

내 MVC 응용 프로그램이 Windows 인증에서 실행 중입니다.TempData + Windows 인증 = 시간 제한 없음. 가능한가?

내 응용 프로그램의 여러 위치에서 TempData를 사용했습니다. 문제는 세션 타임 아웃으로 명확해진다는 것입니다. 그러나 Windows 로그인은 계속 실행 중입니다. 어떻게 사용자가 자신의 Windows 로그인을 로그 오프 할 때까지 그대로 유지하도록 설정할 수 있습니다. 내 말은, 거기에는 시간 제한이 없어야한다는 것입니다. 그것은 가능한가?

답변

0

제 생각에, TempData는 단지 다음 작업까지 값이 지속되므로 "Temp"데이터라고 불립니다. 또한 세션은 현재 사용자 세션의 데이터 만 유지 관리 할 수 ​​있습니다.

시간 초과 (정말로 이상하게 들리며 잘못된 코드 연습 문제를 일으킬 수 있음)를 원하지 않으면 캐시를 사용하거나 데이터를 데이터베이스에 보관하십시오. 원하는만큼 데이터를 보관할 수 있습니다.

1

당신은 웹 설정에서 세션 시간 초과 값을 변경할 수 있습니다

<sessionState mode="InProc" timeout="20"/> 

그냥 2 일 동안 더 높은 값 20 분에서

예를 분 시간 제한 값을 변경

<sessionState mode="InProc" timeout="2880"/> 
+0

다른 옵션은 무엇입니까? 가능하다면 무제한이 되길 원합니다. – Nirman

+0

나는 이것을 높게 설정할 수 있다고 생각합니다. 예를 들어 1 년입니다.하지만 아마도 좋은 생각은 아닙니다. 세션이 아니라 영구 쿠키를 사용할 수 있습니다. – iandayman

+0

정말로, 나는 그것을 2880로 설정했다. 그리고 여전히 더 적은 시간에 타임 아웃을한다. – Nirman