Exemplo n.º 1
0
		public void DelegateSerializationTest ()
		{
			var a = new DelegateSerialization ();
			a.E += HandleE1;

			var d2 = Delegate.CreateDelegate (typeof(Func<StringBuilder, int>), "val", typeof(SerializationTest).GetMethod ("HandleE2"));
			a.E += (Func<StringBuilder, int>) d2;

			using (var ms = new MemoryStream ()) {
				var fmt = new BinaryFormatter ();
				fmt.Serialize (ms, a);
				ms.Flush ();

				ms.Seek (0, SeekOrigin.Begin);
				var a2 = (DelegateSerialization) fmt.Deserialize (ms);
				a2.Test ();
			}
		}
        public void DelegateSerializationTest()
        {
            var a = new DelegateSerialization();

            a.E += HandleE1;

            var d2 = Delegate.CreateDelegate(typeof(Func <StringBuilder, int>), "val", typeof(SerializationTest).GetMethod("HandleE2"));

            a.E += (Func <StringBuilder, int>)d2;

            using (var ms = new MemoryStream()) {
                var fmt = new BinaryFormatter();
                fmt.Serialize(ms, a);
                ms.Flush();

                ms.Seek(0, SeekOrigin.Begin);
                var a2 = (DelegateSerialization)fmt.Deserialize(ms);
                a2.Test();
            }
        }