【问题标题】:C# Custom Serialization - Using TypeConverterC# 自定义序列化 - 使用 TypeConverter
【发布时间】:2009-12-29 03:57:41
【问题描述】:

所以我需要序列化像Dictionary<long, List<MyClass>> 这样的通用字典。我需要对其进行序列化以将其存储在 ASP.Net 应用程序的 ViewState 中。

我找到了一个使用TypeConverter 将我的类转换为要序列化的字符串的示例,但我收到一条错误消息,指出MyClass is not marked as serializable

这是我班级的代码..

 [TypeConverter (typeof(MyClass_Converter))]
 public class MyClass
 {
     // some properties
 }

 public class MyClass_Converter : System.ComponentModel.TypeConverter
 {
     public override bool CanConvertTo(...)
     {
         // code
     }

     // CanConvertFrom, ConvertFrom, ConvertTo methods
 }

然后当我想序列化它时,我正在使用这段代码......

 LosFormatter los = new LosFormatter();
 StringWriter sw = new StringWriter();
 los.Serialize(sw, hiddenData);
 String resultSt = sw.GetStringBuilder().ToString();   
 ViewState["HiddenData"] = resultSt;  

我做错了吗?

【问题讨论】:

    标签: c# asp.net serialization viewstate


    【解决方案1】:

    【讨论】:

    • 那我还需要使用 TypeConverter 吗?
    • 试试看,然后告诉我们会发生什么。
    • 我做到了,我没有发现将它们一起使用与仅使用 Serializable 有什么不同。
    猜你喜欢
    • 2016-01-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-25
    • 1970-01-01
    相关资源
    最近更新 更多