我试着去抓住与目前使用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