diff options
author | Vladimir Krasnov <krasnov@mono-cvs.ximian.com> | 2007-07-23 14:57:55 +0400 |
---|---|---|
committer | Vladimir Krasnov <krasnov@mono-cvs.ximian.com> | 2007-07-23 14:57:55 +0400 |
commit | 09730e286f25c3ae091f391dbe375b873f422230 (patch) | |
tree | 441b4e4afcb6f0dee200b9e0e9eb9050b5a02670 /mcs/class/System.XML/System.Xml.Serialization | |
parent | 2c240497fc16a2b496ce91c5ac5e4918d89042a6 (diff) |
* XmlTypeMapping.cs: fixed XmlSerializableMapping ctor, corrected when qualified name is empty
* XmlSchemaExporter.cs: fixed SetSchemaXmlSerializableType when schema provider method returns null schema
svn path=/trunk/mcs/; revision=82476
Diffstat (limited to 'mcs/class/System.XML/System.Xml.Serialization')
3 files changed, 13 insertions, 3 deletions
diff --git a/mcs/class/System.XML/System.Xml.Serialization/ChangeLog b/mcs/class/System.XML/System.Xml.Serialization/ChangeLog index 43b7dcf2fef..490a0452d0e 100644 --- a/mcs/class/System.XML/System.Xml.Serialization/ChangeLog +++ b/mcs/class/System.XML/System.Xml.Serialization/ChangeLog @@ -1,3 +1,10 @@ +2007-07-23 Vladimir Krasnov <vladimirk@mainsoft.com> + + * XmlTypeMapping.cs: fixed XmlSerializableMapping ctor, corrected when + qualified name is empty + * XmlSchemaExporter.cs: fixed SetSchemaXmlSerializableType when schema + provider method returns null schema + 2007-06-30 Gert Driesen <drieseng@users.sourceforge.net> * CodeIdentifier.cs: Default ctor is public on 1.0 profile too. diff --git a/mcs/class/System.XML/System.Xml.Serialization/XmlSchemaExporter.cs b/mcs/class/System.XML/System.Xml.Serialization/XmlSchemaExporter.cs index bd18111d88b..ee1327a4844 100644 --- a/mcs/class/System.XML/System.Xml.Serialization/XmlSchemaExporter.cs +++ b/mcs/class/System.XML/System.Xml.Serialization/XmlSchemaExporter.cs @@ -602,12 +602,12 @@ namespace System.Xml.Serialization { void SetSchemaXmlSerializableType (XmlSerializableMapping map, XmlSchemaElement elem) { #if NET_2_0 - if (map.SchemaType != null) { + if (map.SchemaType != null && map.Schema != null) { elem.SchemaType = map.SchemaType; return; } - if (map.SchemaTypeName != null) { + if (map.SchemaType == null && map.SchemaTypeName != null) { elem.SchemaTypeName = map.SchemaTypeName; elem.Name = map.SchemaTypeName.Name; return; diff --git a/mcs/class/System.XML/System.Xml.Serialization/XmlTypeMapping.cs b/mcs/class/System.XML/System.Xml.Serialization/XmlTypeMapping.cs index df2c17543b5..ef45eca4f55 100644 --- a/mcs/class/System.XML/System.Xml.Serialization/XmlTypeMapping.cs +++ b/mcs/class/System.XML/System.Xml.Serialization/XmlTypeMapping.cs @@ -213,7 +213,10 @@ namespace System.Xml.Serialization if (retVal is XmlSchemaComplexType) { _schemaType = (XmlSchemaComplexType) retVal; - _schemaTypeName = _schemaType.QualifiedName; + if (!_schemaType.QualifiedName.IsEmpty) + _schemaTypeName = _schemaType.QualifiedName; + else + _schemaTypeName = new XmlQualifiedName (xmlType, xmlTypeNamespace); } else if (retVal is XmlQualifiedName) { _schemaTypeName = (XmlQualifiedName)retVal; |