在我们处理序列化时,在类的开头(在命名空间之后和类之前)使用[Serializable()]是多么重要?
我正在查看以下示例:
namespace MyObjSerial
{
[Serializable()] //Set this attribute to all the classes that you define to be serialized
public class Employee : ISerializable
{
public int EmpId;
public string EmpName;
//Default constructor
public Employee()
{
EmpId = 0;
EmpName = null;
}
}
}
答案 0 :(得分:1)
使用二进制可序列化
类型的两种方法{如果你想用XML序列化这不是你想要的}
实施ISerializable
可让您完全控制序列化
或强>
使用serialzable
,nonSerialized
等属性以及其他各种属性。
使用serialzable
属性指示序列化程序包含该类型中的所有字段,包括private,
public but not
properties`
我想您想在XML
中序列化该类,在这种情况下
使用 XML Serializable
类型的两种方法使用System.Xml.Serialization
属性
或强>
实施IXmlSerializer
以获得更多控制权
在课程开头使用[Serializable()]很重要 (在命名空间之后和课前)当我们处理时 序列
Ofcorse ..这就是你要告诉编译器序列化那些特定类型的方法。但是你应该根据类应序列化的内容来使用属性或接口。
因此,使用[Serializable()]
属性将类型序列化为XML
将无效。它用于二进制序列化。您应该使用System.Xml.Serialization attributes
的属性在课堂上或使用IXmlSerializer
进行 XML序列化
您可以使用
1>Data Contract Serializer
2>Binary Serializer
3>Xml Serializer