在逻辑删除后在viewModel
中设置/注入依赖关系的建议方法是什么?假设当应用程序停用时,您通常会将ViewModel
添加到State字典中,然后在应用程序重新激活框架之前反序列化需要默认构造函数的ViewModel
?
如果我有下面的类,我希望依赖注入创建一个“MyVM”实例,为IServiceA和IServiceB注入依赖项。拥有默认构造函数不会设置所需的依赖项。
public class MyVM(IServiceA svca,IServiceB svcB)
{
}
如何在墓碑场景中设置ViewModel?
答案 0 :(得分:0)
我不知道您是否使用特定的MVVM框架,但Caliburn Micro有一些内置的逻辑删除功能。
文档中的一小段摘录:
public class PivotPageModelStorage : StorageHandler<PivotPageViewModel> {
public override void Configure() {
this.ActiveItemIndex()
.InPhoneState()
.RestoreAfterViewLoad();
}
}
该示例在电话状态下存储ActiveItemIndex(PiveotPageViewModel上的属性),但它也可以在PhoneState,AppSettings或您自己的自定义实现中存储整个对象图。通过继承StorageHandler,您可以获得所有这些功能。使用CM,您不必担心重新注入服务,它会为您处理,因为它拥有自己的内置容器。
在最近关于构建WP7应用的Hanselman帖子中,他谈到了TombstoneHelper。我没有使用过这个,但它看起来很有趣。