2012-12-12 7 views
1

여러 브라우저 인스턴스를 사용해야하는 .NET MVC4 응용 프로그램을 시작하려고합니다. 각 브라우저마다 자체 인스턴스 또는 세션 당 필요합니다. 예를 들어 학교에서 사용하는 응용 프로그램이라고 가정 해 보겠습니다. 기본 창에서 학생을 대상으로 검색이 수행되고 브라우저 창에서 수행 된 모든 작업이 선택한 학생과 연결되도록 선택됩니다. 두 개의 다른 브라우저 창을 열고 두 학생과 똑같은 일을하므로 이제 각 창은 특정 학생과 연결됩니다. 브라우저의 모든 인스턴스에 걸쳐 도달하기 때문에 Session 객체를 사용할 수 있다고 생각하지 않습니다. 이와 같은 것을 구현하는 가장 좋은 방법은 무엇입니까?별도의 세션이있는 여러 브라우저 창

+0

경로를 기반으로 현재 선택된 학생을 알지 못합니까? – dblood

+0

내 대답이 도움이 되었습니까? 그렇다면 허용 된 답변으로 표시 할 수 있습니까? – dblood

답변

0

여기에 몇 가지 가능성이 있습니다.

각 브라우저가 로그인 한 사용자와 독립적 인 학생을 보는 경우 요청을 실행 한 브라우저 인스턴스에 관계없이 현재 학생의 정보를 제공합니다. 그러면 학생 모델을 비행 중에 간단히로드 할 수 있습니다.

예를 들어 검색 후 학생 페이지로 리디렉션한다고 가정합니다.

http://www.blah.com/home/student/profile/123

MVC가 학생을로드하고보기를 렌더링 학생증 = 123에 해당하는 컨트롤러에 당신을 얻을 것이다 : 당신은 설정이 유사한 URL 경로 수 있습니다.

현재 학생을 세션 캐시에 저장하려면 캐시에서 학생을 고유하게 식별 할 수 있어야합니다. "student"라는 이름으로 저장하는 대신 "student-123"으로 저장합니다. 여기서 123은 학생의 ID입니다. 그런 다음 세션 캐시에 특정 학생을 찾기위한 코드를 작성할 수 있습니다. 존재하지 않으면 즉시로드하십시오.