public object GetDeserializedObject(object obj, Type targetType) { if (obj == null) { return(null); } MyFileStreamReference myFileStreamRef = obj as MyFileStreamReference; if (null != myFileStreamRef) { if (targetType != typeof(MyFileStream)) { throw new ArgumentException("Target type for deserialization must be MyFileStream"); } return(myFileStreamRef.ToMyFileStream()); } return(obj); }
public object GetObjectToSerialize(object obj, Type targetType) { if (obj == null) { return(null); } MyFileStream myFileStream = obj as MyFileStream; if (null != myFileStream) { if (targetType != typeof(MyFileStreamReference)) { throw new ArgumentException("Target type for serialization must be MyFileStream"); } return(MyFileStreamReference.Create(myFileStream)); } return(obj); }