示例#1
0
 /// <summary> Десериализует граф </summary>
 /// <param name="graph">Массив байтов</param>
 /// <returns>
 /// <see cref="DirectedGraph"/> или <see cref="UndirectedGraph"/>
 /// </returns>
 public static IGraph Deserialize(byte[] graph)
 {
     using (var stream = new MemoryStream(graph))
     {
         var deSerializer = new DataContractSerializer(typeof(GraphDto));
         return(GraphToDtoConverter.ConvertBack((GraphDto)deSerializer.ReadObject(stream)));
     }
 }
示例#2
0
        /// <summary> Сериализует граф </summary>
        /// <param name="graph"> Граф </param>
        /// <returns>Массив байтов</returns>
        public static byte[] Serialize(IGraph graph)
        {
            using (var stream = new MemoryStream())
            {
                var serializer = new DataContractSerializer(typeof(GraphDto));
                serializer.WriteObject(stream, GraphToDtoConverter.Convert(graph));

                return(stream.ToArray());
            }
        }