我試着去抓住與目前使用MVVM光在Silverlight 4,我寫可驗證的ViewModels。Silverlight的構造函數注入視圖模型+設計模式
進出口使用AutoFac和IoCContainer正在做它的工作的罰款。然而,爲了注入的ViewModels,這必將對瀏覽我的這個構造鏈的構造:
public UserViewModel() : this(IoCContainer.Resolve<IUserServiceAsync>())
{
}
public UserViewModel(IUserServiceAsync userService)
{
if (this.IsInDesignMode) return;
_userService = userService;
}
這並不感到乾淨,但到目前爲止,我已經找到了最好的選擇。這工作和我的應用程序按需工作,並與控制倒置測試。
然而,我的虛擬機綁定到我的看法是這樣的:
<UserControl.DataContext>
<ViewModel:UserViewModel />
</UserControl.DataContext>
在我的XAML頁面屬性,設計模式都VS2010和混合不起作用。
是否有更好的方式來實現什麼即時在Silverlight仍然與設計模式下工作努力?失去設計模式並不是一個難題,但在學習XAML時會很方便。一個清潔沒有鏈方式將是很好,但!
林認爲它也許可以使用AutoFac /國際奧委會解決的ViewModels到的意見,並列爲對XAML標記的辦法以上,並沿着這條路走下去?
謝謝。
感謝您的詳細回覆! – Jammin 2010-10-27 17:38:46