Ejemplo n.º 1
0
        public void TestDataSet()
        {
            FileStream       stream     = new FileStream("Prova.bin", System.IO.FileMode.Create);
            CompactFormatter CFormatter = new CompactFormatter();

            CFormatter.AddSurrogate(typeof(Surrogate.DefaultSurrogates));
            Surrogate.GhostDataTableOverrider over = new Surrogate.GhostDataTableOverrider();
            CFormatter.AddOverrider(typeof(Surrogate.DataSetOverrider));
            CFormatter.AddOverrider(typeof(Surrogate.GhostDataTableOverrider));

            /*long start = DateTime.Now.Ticks;
             *
             * DataSet s = new DataSet();
             * s.ReadXml("dataset.xml");
             *
             * Console.WriteLine(
             *      "Serializing and Deserializing {0} instances of type {1}",
             *      max,s.GetType().ToString()
             *      );
             *
             * //for(int i = 0; i<max; i++)
             * //{
             * CFormatter.Serialize(stream, s);
             * //}
             * stream.Flush();
             * stream.Close();
             *
             * stream = new FileStream("Prova.bin",System.IO.FileMode.Open);
             * CompactFormatter CFormatter2 = new CompactFormatter();
             * CFormatter2.AddSurrogate(typeof(Surrogate.DefaultSurrogates));
             * CFormatter2.AddOverrider(typeof(Surrogate.GhostDataTableOverrider));
             * CFormatter2.AddOverrider(typeof(Surrogate.DataSetOverrider));
             * Console.WriteLine("Deserializing...");
             *
             * DataSet temp;
             * //for(int i = 0; i<max; i++)
             * //{
             * temp = (DataSet)CFormatter2.Deserialize(stream);
             * //}
             * stream.Close();
             *
             * long stop = DateTime.Now.Ticks;
             * long ts = stop-start;
             *
             * Console.WriteLine("Elapsed Time:{0},{1},{2}",ts,start,stop);
             *
             * temp.WriteXml("prova.xml");
             * Assert.AreEqual(s,temp);*/
        }
        public void SerializeOneWithOverrider()
        {
            CompactFormatter CF = new CompactFormatter();

            CF.AddOverrider(typeof(OverriderClass));

            FileStream stream = new FileStream("Prova.bin", System.IO.FileMode.Create);

            ObjectWithOverrider ser = new
                                      ObjectWithOverrider(42, 3.1415F, "Ciao Mondo!");

            CF.Serialize(stream, ser);

            stream.Flush();
            stream.Close();


            CF = new CompactFormatter();
            CF.AddOverrider(typeof(OverriderClass));

            FileStream          stream2 = new FileStream("Prova.bin", System.IO.FileMode.Open);
            ObjectWithOverrider ser2    = (ObjectWithOverrider)
                                          CF.Deserialize(stream2);

            Assert.AreEqual(42, ser2.A);
            Assert.AreEqual(3.1415, ser2.F);
            Assert.AreEqual("Ciao Mondo!", ser2.S);

            stream2.Close();
        }
Ejemplo n.º 3
0
        public void TestGhostDataTable()
        {
            FileStream       stream     = new FileStream("Prova.bin", System.IO.FileMode.Create);
            CompactFormatter CFormatter = new CompactFormatter();

            CFormatter.AddSurrogate(typeof(Surrogate.DefaultSurrogates));
            CFormatter.AddOverrider(typeof(Surrogate.GhostDataTableOverrider));

            long start = DateTime.Now.Ticks;

            DataTable s = new DataTable();

            s.Columns.Add("Col1");
            s.Columns.Add("Col2");
            s.Rows.Add(new Object[] { 13, 14 });

            Console.WriteLine(
                "Serializing and Deserializing {0} instances of type {1}",
                max, s.GetType().ToString()
                );

            //for(int i = 0; i<max; i++)
            //{
            CFormatter.Serialize(stream, s);
            //}
            stream.Flush();
            stream.Close();

            stream = new FileStream("Prova.bin", System.IO.FileMode.Open);
            CompactFormatter CFormatter2 = new CompactFormatter();

            CFormatter2.AddOverrider(typeof(Surrogate.GhostDataTableOverrider));
            CFormatter2.AddSurrogate(typeof(Surrogate.DefaultSurrogates));

            DataTable temp;

            //for(int i = 0; i<max; i++)
            //{
            temp = (DataTable)CFormatter2.Deserialize(stream);
            //}
            stream.Close();

            long stop = DateTime.Now.Ticks;
            long ts   = stop - start;

            Console.WriteLine("Elapsed Time:{0},{1},{2}", ts, start, stop);

            Assert.AreEqual(13, Int32.Parse((String)s.Rows[0]["Col1"]));
            Assert.AreEqual(temp.Rows.Count, s.Rows.Count);
        }