+2010-01-25 Atsushi Enomoto <atsushi@ximian.com>
+
+ * XmlObjectSerializerTest.cs : added test for bug #560155.
+
2010-01-08 Atsushi Enomoto <atsushi@ximian.com>
- * XmlObjectSrializerTest.cs : added test for bug #568763.
+ * XmlObjectSerializerTest.cs : added test for bug #568763.
2009-09-28 Atsushi Enomoto <atsushi@ximian.com>
{
new DataContractSerializer (typeof (NestedContractType));
}
-
+
+ [Test]
+ public void Bug560155 ()
+ {
+ var g = Guid.NewGuid ();
+ Person p1 = new Person ("UserName", g);
+ Assert.AreEqual ("name=UserName,id=" + g, p1.ToString (), "#1");
+ MemoryStream memStream = new MemoryStream ();
+ DataContractSerializer ser = new DataContractSerializer (typeof (Person));
+
+ ser.WriteObject (memStream, p1);
+ memStream.Seek (0, SeekOrigin.Begin);
+ Person p2 = (Person) ser.ReadObject (memStream);
+ Assert.AreEqual ("name=UserName,id=" + g, p2.ToString (), "#1");
+ }
+
private T Deserialize<T> (string xml)
{
return Deserialize<T> (xml, typeof (T));
[DataMember]
public string AdvertPrompt { get; set; }
}
+
+// bug #560155
+
+[DataContract]
+public class Person
+{
+ [DataMember]
+ readonly public string name;
+ [DataMember]
+ readonly public Guid Id = Guid.Empty;
+
+ public Person (string nameIn, Guid idIn)
+ {
+ name = nameIn;
+ Id = idIn;
+ }
+
+ public override string ToString()
+ {
+ return string.Format ("name={0},id={1}", name, Id);
+ }
+}