2009-08-28 2 views
0

로그인/로그 아웃 기능이있는 앱이 있습니다. 사용자가 로그 아웃 할 때 모든 클래스와 변수를 완전히 재설정하고 싶습니다 (정적 클래스를 사용하므로 문제가 더욱 어려워집니다).코드에서 C# 응용 프로그램을 완전히 재설정하는 방법은 무엇입니까?

나는 리셋을 그대로두고 앱을 완전히 새로 고침하는 것이 최선의 결정이라고 생각한다. 사용자는 그 차이를 알지 못하므로 가능한 빵 부스러기를 없앨 것이다.

그래서 나는 다음 (중입니다 최고/쉬운) 과정 자체를 폐쇄하고 2를 다시 시작) 응용 프로그램을 실행 상태로 유지하여 응용 프로그램을 다시로드하고 모든 데이터를 재설정)

1 중 하나에 몇 가지 아이디어를 싶습니다 변수 (창 포함) - AppDomain에 의한 것일 수도 있습니다 .Unload/Load 또는 일부 콤보

어떤 조언이 필요합니까?

답변

0

옵션 1이 유효한 옵션이면 가장 쉬운 방법이므로 가능한대로 수행하십시오.

이 질문에서 볼 수있는 샌드 박스가 문제없이 아니므로 응용 프로그램 도메인을 사용 : .NET - What's the best way to implement a "catch all exceptions handler"

+0

다음 두 줄의 솔루션을 테스트하려고합니다. 다시보고 할 것입니다. System.Windows.Forms.Application.Restart(); Application.Current.Shutdown(); – bluebit

2

당신은 아마이 듣고 싶지 않아,하지만 지금은 이러한 문제로 실행중인 원래 디자인 때문에 쾅쾅 소리가 났을 가능성이 큽니다. 정적 컨텍스트에서 사용자 세션과 관련된 데이터를 저장하는 것은 대개 최선의 방법이 아닙니다.

관련 문제