2006-05-31 Senganal T <tsenganal@novell.com>
authorSenganal T <senga@mono-cvs.ximian.com>
Wed, 31 May 2006 09:40:34 +0000 (09:40 -0000)
committerSenganal T <senga@mono-cvs.ximian.com>
Wed, 31 May 2006 09:40:34 +0000 (09:40 -0000)
* Test/System.Data/DataSetTest2.cs : Fixed InferXmlSchema_inferingTables5.
* System.Data/XmlDataInferenceLoader.cs :
- InferTableElement : Repeated element should result in a single
inferred table.
Patch from Deepak Kr Velachha

svn path=/trunk/mcs/; revision=61306

mcs/class/System.Data/System.Data/ChangeLog
mcs/class/System.Data/System.Data/XmlDataInferenceLoader.cs
mcs/class/System.Data/Test/System.Data/ChangeLog
mcs/class/System.Data/Test/System.Data/DataSetTest2.cs

index 84d3037e2598bd52100aac1a2d82cc52f2ac7235..7ffb55686fc31df4d07381aab33c1e6c2067375b 100644 (file)
@@ -1,3 +1,10 @@
+2006-05-31  Senganal T  <tsenganal@novell.com>
+
+       * XmlDataInferenceLoader.cs :
+               - InferTableElement : Repeated element should result in a single
+               inferred table.
+       Patch from Deepak Kr Velachha 
+
 2006-04-21  Senganal T  <tsenganal@novell.com>
 
        * DataRowCollection.cs :
index e6e1aa3a05bf2927fbdb1590614b1b3d27f3852d..93b858bdc71f0d78a8b8e743f58b505b68008d54 100644 (file)
@@ -343,7 +343,8 @@ namespace System.Data
 \r
                        bool hasChildElements = false;\r
                        bool hasAttributes = false;\r
-                       bool hasText = false;\r
+                       bool hasText = false;
+                       bool isElementRepeated = false;\r
 \r
                        foreach (XmlAttribute attr in el.Attributes) {\r
                                if (attr.NamespaceURI == XmlConstants.XmlnsNS)\r
@@ -366,7 +367,9 @@ namespace System.Data
                                case XmlNodeType.ProcessingInstruction: // ignore\r
                                        continue;\r
                                default: // text content\r
-                                       hasText = true;\r
+                                       hasText = true;
+                                       if (GetElementMappingType (el, ignoredNamespaces, null) == ElementMappingType.Repeated)
+                                               isElementRepeated = true;
                                        break;\r
                                case XmlNodeType.Element: // child\r
                                        hasChildElements = true;\r
@@ -394,7 +397,7 @@ namespace System.Data
 \r
                        // Attributes + !Children + Text = SimpleContent\r
                        if (table.SimpleContent == null // no need to create\r
-                               && !hasChildElements && hasText && hasAttributes) {\r
+                               && !hasChildElements && hasText && (hasAttributes || isElementRepeated)) {\r
                                GetMappedColumn (table, table.Table.TableName + "_Text", String.Empty, String.Empty, MappingType.SimpleContent);\r
                        }\r
                }\r
index 46bbf279f422f16a1673325fbf6f01dfb530405b..062b01d3f250831f1f5689f5471bd63a9ae7231f 100644 (file)
@@ -1,3 +1,8 @@
+2006-05-31  Senganal T <tsenganal@novell.com>
+
+       * DataSetTest2.cs : Fixed InferXmlSchema_inferingTables5.
+       Patch from Deepak Kr Velachha   
+
 2006-05-31  Senganal T <tsenganal@novell.com>
 
        * DataSetTest2.cs,DataSetReadXmlSchemaTest.cs,DataSetTest.cs:
index 860902b8291b6df847ac12ec21505e59cbb98225..80345759de710cd8fe398f78f1186887c978c6a3 100644 (file)
@@ -726,7 +726,6 @@ namespace MonoTests_System.Data
                }
 
                [Test]
-               [Category ("NotWorking")]
                public void InferXmlSchema_inferingTables5()
                {
                        //Acroding to the msdn documantaion :