我正在使用带有WinRT应用程序的Caliburn micro,看起来没有StorageManager类,在这种情况下,任何人都有关于如何保持application / ViewModels状态的建议。
TIA
答案 0 :(得分:1)
这与Caliburn.Micro无关,而是一般性问题。您可以使用序列化,但是您必须注意视图模型中的版本控制和更改,或者您可以使用常规IO方法将您感兴趣的字段保存到文件中,或者甚至将视图模型存储在数据库中希望(虽然我认为这可能有点极端)。
编辑:Caliburn.Micro不是业务应用程序框架,据我所知,还没有尝试将业务功能与CM集成的库,因此这会让您将序列化作为最好的选择,但正如我所说ser / des带来了一些噩梦,你必须管理,如版本更改,课程更改等。
还有另一个名为Catel的项目,它是一个包含MVVM框架的业务应用程序框架,无论如何Catel使用一个名为DataObjectBase
的漂亮对象(实际上它现在被称为ModelBase
)解决了序列化的所有问题,如果你想阅读它并看看它们是如何完成的,那么代码项目就会有 article 。
如果您希望可以使用Catel.Core module这是一个具有大量数据处理功能的库(它包含ModelBase
类),您可以使用查看源代码,看看他们如何解决ser / des的问题,并在项目中使用Caliburn.Micro实现。