在搜索DataContractSerialization时,我找到了各种文章,其中提到了DataContractSerialization与WCF一起使用。现在我正在使用.net 4.0开发一个桌面应用程序(不是任何类型的服务)。这个应用程序有各种数据需要序列化。
通过研究DataContractSerialization的特性,我想在我的应用程序中使用DataContractSerialization。
所以,请告诉我DataContractSerialization是否可以用于桌面应用程序,以及处理版本控制的任何指南。
发布于 2012-06-08 18:06:45
您可以使用桌面应用程序的datacontractserializer,没有问题。至于版本控制,您可以将新成员添加到现有的数据协定中,并且可以非常轻松地处理丢失的数据。
但是,如果您想要删除字段或更改现有字段的含义(例如,您的鞋类属性" size“过去是欧元的尺寸,但现在是英国的鞋码),那么很快就会遇到困难。然后,您应该创建一个新的合同版本。请看这个问题:Simple data file versioning with DataContractSerializer。
这是来自微软的关于versioning strategies的文档
发布于 2012-06-08 18:04:32
是的,DataContractSerializer是为WCF使用而编写的,但它是独立的和自包含的,并且可以在任何情况下不使用WCF使用。它甚至是在一个单独的程序集中。
发布于 2012-06-08 17:59:50
是的,你可以用。当您尝试序列化字典和列表时,Xml序列化有一些缺点。但是DataContractSerialization提供了我们需要的所有功能。
https://stackoverflow.com/questions/10946702
复制相似问题