+2003-03-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
+
+ * XmlSerializer.cs : Serialize() don't write xmldecl when WriteState is
+ not WriteState.Start, and never call WriteEndDocument().
+
2003-03-12 Elan Feingold <efeingold@mn.rr.com>
* XmlCustomFormatter.cs: Correct signature, Implement
if (IsInbuiltType(objType))
{
- writer.WriteStartDocument ();
+ if (writer.WriteState == WriteState.Start)
+ writer.WriteStartDocument ();
SerializeBuiltIn (writer, o);
- writer.WriteEndDocument();
+ // Keep WriteState.Content state.
+ // writer.WriteEndDocument();
+ writer.Flush ();
return;
}
XmlSerializerNamespaces nss = new XmlSerializerNamespaces ();
XmlQualifiedName[] qnames;
- writer.WriteStartDocument ();
+ if (writer.WriteState == WriteState.Start)
+ writer.WriteStartDocument ();
object [] memberObj = (object []) typeTable [objType];
if (memberObj == null)
throw new Exception ("Unknown Type " + objType +
SerializeMembers (writer, o, true);//, namespaces);
- writer.WriteEndDocument ();
+ // Keep WriteState.Content state.
+ // writer.WriteEndDocument ();
+ writer.Flush ();
}
private void SerializeBuiltIn (XmlWriter writer, object o)