【问题标题】:How to serialize an Object of type System.Net.Mime.ContentType?如何序列化 System.Net.Mime.ContentType 类型的对象?
【发布时间】:2011-02-17 05:51:47
【问题描述】:

我想解析文本消息并将其存储到 System.Net.Mime.Attachment 类型的对象中。当我想序列化这个对象时,问题就来了。

Error: Type "System.Net.Mime.ContentType" is not marked as serializable.

我怎样才能避免这种情况?

谢谢。

【问题讨论】:

    标签: c# content-type mime serialization


    【解决方案1】:

    您将无法在此处进行简单的序列化,因为该类本身没有使用 [Serializable] 属性进行标记。

    但是,在查看docs 之后,看起来该类实际上只是构造和操作诸如“text/javascript”之类的字符串的助手。并且根据 ToString 方法的文档,您可以仅使用 ToString 方法和构造函数来往返 ContentType 对象。

    例如:

    ContentType ctype = ....;//your content type object
    String serialized_form = ctype.ToString();
    //save the string to whatever medium you like
    ...
    ContentType ctype2 = new ContentType(serialized_form);
    Debug.Assert(ctype.Equals(ctype2));
    

    你可以对上面的字符串做任何你想做的事(把它写到磁盘上……随便)。

    【讨论】:

      猜你喜欢
      • 2015-10-15
      • 1970-01-01
      • 1970-01-01
      • 2016-05-15
      • 2020-12-25
      • 2012-01-29
      • 1970-01-01
      • 2020-01-15
      • 1970-01-01
      相关资源
      最近更新 更多