public void SerializeNonSerializableTypeWithSurrogate() { var p = new NonSerializablePair <int, string>() { Value1 = 1, Value2 = "2" }; Assert.False(p.GetType().IsSerializable); Assert.Throws <SerializationException>(() => BinaryFormatterHelpers.Clone(p)); NonSerializablePair <int, string> result = BinaryFormatterHelpers.Clone(p, new NonSerializablePairSurrogate()); Assert.NotSame(p, result); Assert.Equal(p.Value1, result.Value1); Assert.Equal(p.Value2, result.Value2); }
public BasicISerializableObject(SerializationInfo info, StreamingContext context) { _data = new NonSerializablePair <int, string> { Value1 = info.GetInt32("Value1"), Value2 = info.GetString("Value2") }; }
public BasicISerializableObject(int value1, string value2) { _data = new NonSerializablePair <int, string> { Value1 = value1, Value2 = value2 }; }