public static void DoProc() { var p = new PersonDataContract { Id = 1, Name = "Taro" }; // memorystream class can inmemory processing! using (var stream = new MemoryStream()) { var ser = new DataContractJsonSerializer(typeof(PersonDataContract)); ser.WriteObject(stream, p); // change current stream position to head, then read all stream data. stream.Position = 0; var reader = new StreamReader(stream); Console.WriteLine(reader.ReadToEnd()); // again set position to head. stream.Position = 0; var person = (PersonDataContract)ser.ReadObject(stream); Console.WriteLine(person.ToString()); } }
public static void DoProc() { var p = new PersonDataContract() { Id = 1, Name = "Taro" }; using (Stream stream = new FileStream("data.xml", FileMode.Create)) { var ser = new DataContractSerializer(typeof(PersonDataContract)); ser.WriteObject(stream, p); } using (Stream stream = new FileStream("data.xml", FileMode.Open)) { var ser = new DataContractSerializer(typeof(PersonDataContract)); var result = (PersonDataContract)ser.ReadObject(stream); } }