저는 ASP.NET MVC 2 웹 응용 프로그램을 사용하여 사용자가 시뮬레이션에서 매개 변수를 편집하고 실행할 수 있도록했습니다. 사용자가 특정 시뮬레이션 편집을 시작하면 다른 사용자가 액세스 할 수 없어야합니다.ASP.NET MVC 객체 잠금 메커니즘
ASP.NET MVC에서 그 목표를 달성하기위한 쉬운 방법이 있습니까?
첫 번째 아이디어는 시뮬레이션과 함께 로그온 한 사용자의 ID를 Application 컬렉션에 넣는 것이 었습니다. Application.Add ((Guid) Membership.GetUser(). ProviderUserKey, simulationId);
그런 다음 세션이 만료되면 Session_End 메서드에서 제거합니다. 그러나 Session_End 메서드는 web.config 파일의 해당 매개 변수와 함께 호출되지 않습니다. sessionState mode = "InProc"timeout = "1"
무엇이 잘못 되었나요?/더 나은 메커니즘이 있습니까?
시뮬레이션을 시작하기 위해 설정해야 할 매개 변수가 상당히 많으므로 다른 사용자가 이미 동일한 시뮬레이션에 있음을 사용자에게 알려주는 것이 좋습니다. 많은 수의 사용자가 사용하지 않을 웹 응용 프로그램이므로 성능이 실제로 문제가되지 않습니다. – alex