【问题标题】:Serialize and deserialize in both .NET framework 2 and 4 - C#在 .NET 框架 2 和 4 中序列化和反序列化 - C#
【发布时间】:2011-01-14 09:36:24
【问题描述】:

我在 C# .NET 框架 2 中有一个 winform 应用程序,我想将其对象序列化为 xml 文件,并通过反序列化 (c#) 在 Silverlight 框架 4 中使用这些文件。

框架 2 和 4 支持哪个序列化类?

【问题讨论】:

    标签: c# .net silverlight serialization xml-serialization


    【解决方案1】:

    优秀的XmlSerializer 有什么问题?

    你说你想将对象序列化为 XML 文件,而 .NET Framework 2.0 版和 4.0/Silverlight 都支持 XmlSerializer

    查看链接文档页面上的“其他版本”下拉菜单,了解适用于特定框架版本的任何具体细节。

    【讨论】:

    • 请记住:XML 序列化也是独立于技术的,您可以使用其他语言(例如:Java)编写的系统进行反序列化。但二进制序列化也是可能的:stackoverflow.com/questions/203694/… :)
    • @Oscar:是的,二进制序列化始终是一种选择。但是该问题指定了将对象序列化为 XML 文件的要求。此外,在两个不同的应用程序之间共享二进制序列化数据可能非常困难,即使在相同的技术(在本例中为 .NET)中也是如此。你必须知道适合这项工作的工具。
    • 平台无关的二进制序列化器很容易获得
    • @Marc:抱歉,“工具”是指选择 XML 序列化或二进制序列化。前一句是次要的一点:与版本控制问题等相比,二进制序列化比 XML 序列化更容易破解。除了 .NET Framework 提供的库之外,还有一些可用于二进制序列化的库,但从我在问题中可以看出,那些将是矫枉过正。
    • 哦,我完全同意BinaryFormatter 是不合适的——但是像protobuf 这样的东西没有像版本控制这样的东西。但是 OP 想要 xml,这也很好;p
    【解决方案2】:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-22
      • 2011-09-17
      • 2012-02-02
      • 2014-01-06
      相关资源
      最近更新 更多