2009-07-28 2 views
0

프리즘 (Prism) 응용 프로그램에서 많은 모듈을 가져 오는데,이 모듈은 3-8 초을 사용하여 데이터를로드합니다.Prism/Unity에는 "서비스 프리 로더"가 있습니까?

부트 스트 래퍼이 같은 뭔가 말할 수 있도록하고 싶습니다

:

의사 코드 :

Customers allCustomers = Preloader(Models.GetAllCustomers); 

을 그리고 이것은 백그라운드 스레드에서 실행됩니다 때 사용자가 실제로 "allCustomers"변수가 필요합니다.이 변수는 완전히로드됩니다.

프리로드/유니티에는 자동 로딩 서비스가 있습니까?

답변

1

아니요, 없습니다. 그러나

... 당신의 의견은 사용할 수 있습니다 ConfigureContainer 방법의 컨테이너에 ContainerControlledLifetime와 뷰 모델을 추가하고 고려할 수 있습니다 무엇

. ViewModel의 생성자에서 스레드 요청을 시작하고 Views가 컨테이너에서이 ViewModel을 끌어낼 수있게합니다.

GetAllCustomers 메서드가 실행되기 전에 컨테이너에서 ViewModel을 가져 오더라도 고객을 저장하는 속성이 INotifyPropertyChanged를 올바르게 구현하면 올바르게 알립니다.

더 적절한 경우 부트 스트 래퍼가 아니라 모듈 (예 : 모듈이 실제로 고객의 모델을 알고있는 경우)에서이 작업을 수행 할 수도 있습니다 (Initialize 메소드의 경우).

관련 문제