2009-07-28 16 views
0

我有一個Prism應用程序中的許多模塊加載數據,需要從服務獲取3-8秒Prism/Unity是否有「服務預加載器」?

我希望能在我的引導程序說是這樣的:

僞代碼:

Customers allCustomers = Preloader(Models.GetAllCustomers); 

,這將在後臺線程運行當用戶實際上需要變量「allCustomers」它將被完全加載。

在Prism/Unity中是否有自動服務來執行此類預加載?

回答

1

不,沒有。

但是......

你可以考慮與你ConfigureContainer方法ContainerControlledLifetime到容器的視圖可以使用添加您的視圖模型是什麼。您會在ViewModel的構造函數中啓動線程化請求,並允許Views將此ViewModel從容器中取出。

即使他們在GetAllCustomers方法完成之前將ViewModel從容器中取出,如果您存儲客戶的屬性正確實現了INotifyPropertyChanged,它們也會正確通知。

如果更合適,您也可以從Modules(在Initialize方法中)而不是在引導程序中(例如,如果您的模塊實際上知道您的客戶模型)執行此操作。

相關問題