[Mono-bugs] [Bug 77392][Nor] Changed - [PATCH] XmlReflectionImporter / SoapReflectionImporter fixes

bugzilla-daemon at bugzilla.ximian.com bugzilla-daemon at bugzilla.ximian.com
Wed Feb 8 14:25:50 EST 2006

Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

Changed by lluis at ximian.com.


--- shadow/77392	2006-01-28 13:07:14.000000000 -0500
+++ shadow/77392.tmp.16389	2006-02-08 14:25:50.000000000 -0500
@@ -69,6 +69,49 @@
 I'll attach it in a sec.
 ------- Additional Comments From gert.driesen at pandora.be  2006-01-28 13:07 -------
 Created an attachment (id=16411)
 Fixes and unit tests
+------- Additional Comments From lluis at ximian.com  2006-02-08 14:25 -------
+About the changes in XmlReflectionImporter.cs which changes Type by
+TypeData, I think that there are a lot of changes that are not needed.
+The typeData is only used by ImportPrimitiveMapping. All other
+Import*Mapping don't use the extra info, so they don't need to change.
+The same goes for SoapReflectionImporter.cs.
+Which is the test case for this change inXmlReflectionImporter.cs?
++				if (typeData.IsXsdType)
++					map = new XmlTypeMapping (elementName, rootNamespace, typeData,
+defaultXmlType, typeNamespace);
++				else
++					map = new XmlTypeMapping (elementName, rootNamespace, typeData,
+defaultXmlType, XmlSerializer.WsdlTypesNamespace);
++				break;
+I feel that XmlSerializer.WsdlTypesNamespace should be set somewhere
+else, not in CreateTypeMapping (notice that we don't set the
+XmlSchema.Namespace there, why to set XmlSerializer.WsdlTypesNamespace
+In SoapReflectionImporter.cs:278 Why this?:
+-			map = CreateTypeMapping (typeData, "Array",
++			map = CreateTypeMapping (typeData, null, defaultNamespace);
+Also in SoapReflectionImporter.cs:321
+-			TypeData typeData = TypeTranslator.GetTypeData (type);
+-			XmlTypeMapping map = helper.GetRegisteredClrType (type,
+GetTypeNamespace (typeData, defaultNamespace));
++			Type type = typeData.Type;
++			string ns = typeData.IsXsdType ? XmlSchema.Namespace :
++			XmlTypeMapping map = helper.GetRegisteredClrType (type, ns);
+you are ignoring the defaultNamespace parameter with this change. I
+feel that's not correct.

More information about the mono-bugs mailing list