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);
        }
Example #2
0
 public BasicISerializableObject(SerializationInfo info, StreamingContext context)
 {
     _data = new NonSerializablePair <int, string> {
         Value1 = info.GetInt32("Value1"), Value2 = info.GetString("Value2")
     };
 }
Example #3
0
 public BasicISerializableObject(int value1, string value2)
 {
     _data = new NonSerializablePair <int, string> {
         Value1 = value1, Value2 = value2
     };
 }