我目前正在为我的DataSet使用包装类,以实现自定义序列化.我想使用DataContractSerializer(更像是必须使用它)但仍然支持自定义序列化.问题是,[DataContract]和[Serializable]属性似乎并没有很好地相处...我怎么能覆盖序列化,并支持BOTH DataContract和ISerializable序列化?包装器DataSet类的代码带到这里:
[Serializable()]
[System.Runtime.InteropServices.ComVisible(false)]
public class TestDatasetWrapper : TestDataSet, ISerializable
{
public TestDatasetWrapper()
: base()
{}
protected TestDatasetWrapper(SerializationInfo info, StreamingContext context)
{
SerializationHelper.DeserializeTypedDataSet(info, this);
}
public override void GetObjectData(SerializationInfo info, StreamingContext context)
{
SerializationHelper.AddTypedDataSetObjectData(info, this);
}
}
Run Code Online (Sandbox Code Playgroud)
谢谢!