我对 XML 序列化有疑问。我将尝试用以下示例 xml 文件来解释它
<AutoExpo>
<Details>
<Venue>XYZ</Venue>
<StartTime>09:00</StartTime>
<EndTime>21:00</EndTime>
</Details>
<Cars>
<Car>
<Company>Chevrolet</Company>
<Model>Cruz</Model>
<Color>Red</Color>
</Car>
<Car>
<Company>Ford</Company>
<Model>Fiesta</Model>
<Color>Blue</Color>
</Car>
</Cars>
</AutoExpo>
现在,当我读取这个 xml 文件时,我将汽车反序列化为对象。汽车 list 可能很大。我的代码使用这个对象并且可以改变一些汽车的属性。现在,如果我只想序列化那些属性已更改的汽车对象,返回到 xml 文件并保存它,以便下次我的代码启动时,它会获得最新的状态信息。
最佳答案
在 XML 文件中到处跳转更改属性是非常困难的,无论它们在哪里更改。您应该只将整个文件读入内存,然后在保存时写出整个文件,覆盖旧文件。
XML 并不是执行此操作的糟糕方法,但据我从问题中可以看出,SQL Server(或其他 RDBMS)数据库会更合适。您不必担心此类问题,因为数据库引擎会为您完成。
关于c# - 只序列化xml文件的一部分并保存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10737782/