private void SaveToFile(string fileName, Shapes.Models.ShapeBase shape) { XmlSerializer xmlFormat = new XmlSerializer(typeof(Shapes.Models.ShapeBase), new System.Type[] { shape.GetType() }); using (System.IO.FileStream fStream = new System.IO.FileStream(fileName, System.IO.FileMode.Create, System.IO.FileAccess.Write, System.IO.FileShare.None)) { xmlFormat.Serialize(fStream, shape); } }
private void LoadFromFile(string fileName, out Shapes.Models.ShapeBase shape, System.Type derivativeTypeOfShape) { XmlSerializer xmlFormat = new XmlSerializer(typeof(Shapes.Models.ShapeBase), new System.Type[] { derivativeTypeOfShape }); using (System.IO.FileStream fStream = new System.IO.FileStream(fileName, System.IO.FileMode.Open, System.IO.FileAccess.Read, System.IO.FileShare.None)) { shape = (Shapes.Models.ShapeBase)xmlFormat.Deserialize(fStream); } }