0

我正在使用 MVVM 模式在 windows phone 8 应用程序中工作。当我的应用程序要暂停时,我需要保留页面状态。所以我使用状态字典来存储我的视图模型它工作正常,但是当我尝试使用参数明智的构造函数存储视图模型时会发生以下错误。

类型“ViewModel”无法序列化。考虑使用 DataContractAttribute 属性对其进行标记,并使用 DataMemberAttribute 属性标记您想要序列化的所有成员。或者,您可以确保该类型是公共的并且具有无参数的构造函数 - 然后将序列化该类型的所有公共成员,并且不需要任何属性。

4

1 回答 1

0

如果将对象传递给State字典,它将使用 [Xml]DataContractSerializer 进行序列化,这需要一个公共的无参数构造函数。

如果您不能或不愿意添加这样的构造函数,那么您需要自己处理对象的序列化和反序列化,并将序列化的数据(字符串)添加到字典中。

于 2013-10-03T12:14:46.373 回答