Ejemplo n.º 1
0
        void ParseTables(PDModel m, PDPackage package, XmlNode root)
        {
            foreach (XmlNode tableNode in root.ChildNodes)
            {
                PDTable table = new PDTable();
                table.Model = m;
                table.Package = package;
                table.ID = tableNode.Attributes["Id"].Value;

                foreach (XmlNode node in tableNode.ChildNodes)
                {
                    switch (node.Name)
                    {
                        case "a:Name":
                            table.Name = node.InnerText;
                            break;
                        case "a:Code":
                            table.Code = node.InnerText;
                            break;
                        case "a:Comment":
                            table.Comment = node.InnerText;
                            break;
                        case "c:Owner":
                            table.UserID = node["o:User"].Attributes["Ref"].Value;
                            break;
                        case "c:PrimaryKey":
                            table.PrimaryKeyID = node["o:Key"].Attributes["Ref"].Value;
                            break;
                        case "c:ClusterObject":
                            table.ClusterObjectID = node.FirstChild.Attributes["Ref"].Value;
                            break;
                        case "c:Columns":
                            ParseColumns(m, package, table, node);
                            break;
                        case "c:Keys":
                            ParseKeys(m, package, table, node);
                            break;
                        case "c:Indexes":
                            ParseIndexes(m, package, table, node);
                            break;
                        default:
                            table.AddUnparsedNode(node);
                            break;
                    }
                }//end parse table

                if (package == null)
                {
                    m.AddTable(table);
                }
                else
                {
                    package.AddTable(table);
                }
            }//end parse tables
        }
Ejemplo n.º 2
0
        void ParseTables(PDModel m, PDPackage package, XmlNode root)
        {
            foreach (XmlNode tableNode in root.ChildNodes)
            {
                PDTable table = new PDTable();
                table.Model   = m;
                table.Package = package;
                table.ID      = tableNode.Attributes["Id"].Value;

                foreach (XmlNode node in tableNode.ChildNodes)
                {
                    switch (node.Name)
                    {
                    case "a:Name":
                        table.Name = node.InnerText;
                        break;

                    case "a:Code":
                        table.Code = node.InnerText;
                        break;

                    case "a:Comment":
                        table.Comment = node.InnerText;
                        break;

                    case "c:Owner":
                        table.UserID = node["o:User"].Attributes["Ref"].Value;
                        break;

                    case "c:PrimaryKey":
                        table.PrimaryKeyID = node["o:Key"].Attributes["Ref"].Value;
                        break;

                    case "c:ClusterObject":
                        table.ClusterObjectID = node.FirstChild.Attributes["Ref"].Value;
                        break;

                    case "c:Columns":
                        ParseColumns(m, package, table, node);
                        break;

                    case "c:Keys":
                        ParseKeys(m, package, table, node);
                        break;

                    case "c:Indexes":
                        ParseIndexes(m, package, table, node);
                        break;

                    default:
                        table.AddUnparsedNode(node);
                        break;
                    }
                }//end parse table

                if (package == null)
                {
                    m.AddTable(table);
                }
                else
                {
                    package.AddTable(table);
                }
            }//end parse tables
        }