我想使用功能强大的DataContractSerializer将数据写入或读取到XML文件。
但是作为我的概念,DataContractSerializer只能读取或写入具有整个结构或结构列表的数据。
我的用例如下所述....我无法弄清楚如何使用此API优化性能。
我有一个名为“Information”的结构,并且在此列表中有一个List<Information>
具有可预见数量的元素。
用户可以经常更新或添加新元素到这个列表中。
每个操作(添加或更新),我必须将列表中的所有元素序列化为相同的XML文件。
因此,即使它们没有再次修改为XML,我也会编写相同的数据。它没有意义,但我找不到任何方法来避免这种情况发生。
由于墓碑机制,我必须在10秒内保存所有信息。
我害怕表现,可能会让UI滞后......
DataContractSerializer可以使用任何解决方法将数据信息部分更新或添加到XML文件中吗?
答案 0 :(得分:0)
DataContractSerializer可用于序列化所选项目 - 您需要做的是提出方案来识别已更改的数据以及有效序列化它的方法。例如,其中一种方法可能是
答案 1 :(得分:0)
如果需要考虑性能,那么使用DataContractSerializer以外的其他东西。
对选项进行了很好的比较 http://blogs.claritycon.com/kevinmarshall/2010/11/03/wp7-serialization-comparison/
如果列表的大小是一个问题,您可以尝试将其分成较小的列表。最合适的方法取决于列表中的数据和典型的使用/编辑/添加模式。
根据更改数据的频率,您可以尝试在更改时保存数据。这样就无需在可用于停用的时间内保存它。