[Serializable]
class Student : ISerializable
{
public string LastName;
public string FirstName;
public DateTime birthDate;
public bool isSelfPayer;
public double avgScore;
public Student(SerializationInfo info, StreamingContext context)
{
LastName = info.GetString("LastName");
FirstName = info.GetString("FirstName");
birthDate = (DateTime)info.GetValue("birthDate", birthDate.GetType());
isSelfPayer = info.GetBoolean("isSelfPayer");
avgScore = info.GetDouble("avgScore");
}
public Student()
{
LastName = string.Empty;
FirstName = string.Empty;
birthDate = DateTime.Today;
isSelfPayer = false;
avgScore = 0.0;
}
public void GetObjectData(SerializationInfo info, StreamingContext context)
{
info.AddValue("LastName", LastName);
info.AddValue("FirstName", FirstName);
info.AddValue("birthDate", birthDate);
info.AddValue("isSelfPayer", isSelfPayer);
info.AddValue("avgScore", avgScore);
}
}
class Program
{
[STAThread]
static void Main(string[] args)
{
var student = new Student();
student.FirstName = "Антон";
student.LastName = "Антонов";
student.avgScore = 3.4;
IFormatter formatter = new SoapFormatter();
FileStream buffer = File.Create("D:\\ABC\\student.xml");
formatter.Serialize(buffer, student);
buffer.Close();
}
}
Comments