-3

我正在使用 MVVM 模式在 WPF 中开发基于文本的游戏。我想使用二进制序列化来保存和加载游戏,就像我在使用 WinForms 时所做的那样,但是对于这种模式,我不知道如何正确地做到这一点。哪些类需要序列化以保留必要的数据?还有什么我需要注意的吗?

编辑:如果你要否决这个问题,至少解释一下原因。

4

1 回答 1

2

哪些类需要序列化以保留必要的数据?

这可能听起来很循环,但是:无论您需要保留什么。有时这可能是您的域模型 - MVVM 中的 M。如果这在您的模型中不是很明显,那么我会说:添加一个新的 DTO 层。这个 DTO 模型很简单:你想要存储什么。然后您可以保存和加载而不影响系统的其余部分。显然,您需要一些代码来映射到/从 DTO 模型以及您使用的任何模型。

还有什么我需要注意的吗?

如果你的意思是“二进制序列化” BinaryFormatter,那么要非常小心——当你对你的应用程序进行版本控制时,它可能会很脆弱。还有其他序列化程序以基于二进制(而不是文本)的格式读/写,BinaryFormatter.

于 2013-05-30T16:59:05.040 回答