void ParseReferences(PDModel m, PDPackage package, XmlNode root) { foreach (XmlNode referenceNode in root.ChildNodes) { PDReference reference = new PDReference(); reference.Model = m; reference.Package = package; reference.ID = referenceNode.Attributes["Id"].Value; foreach (XmlNode node in referenceNode.ChildNodes) { switch (node.Name) { case "a:Name": reference.Name = node.InnerText; break; case "a:Code": reference.Code = node.InnerText; break; case "a:Comment": reference.Comment = node.InnerText; break; case "a:Cardinality": reference.Cardinality = node.InnerText; break; case "a:UpdateConstraint": reference.UpdateConstraint = node.InnerText == "1" ? true : false; break; case "a:DeleteConstraint": reference.DeleteConstraint = node.InnerText == "1" ? true : false; break; case "c:ParentTable": reference.ParentTableID = node.FirstChild.Attributes["Ref"].Value; break; case "c:ChildTable": reference.ChildTableID = node.FirstChild.Attributes["Ref"].Value; break; case "c:ParentKey": reference.ParentKeyID = node.FirstChild.Attributes["Ref"].Value; break; case "c:Joins": reference.JoinList = ParseJoins(node.ChildNodes); break; default: break; } }//end parse reference if (package == null) { m.AddReference(reference); } else { package.AddReference(reference); } }//end parse references }
public void AddReference(PDReference Reference) { _ReferenceList.Add(Reference); }
void ParseReferences(PDModel m, PDPackage package, XmlNode root) { foreach (XmlNode referenceNode in root.ChildNodes) { PDReference reference = new PDReference(); reference.Model = m; reference.Package = package; reference.ID = referenceNode.Attributes["Id"].Value; foreach (XmlNode node in referenceNode.ChildNodes) { switch (node.Name) { case "a:Name": reference.Name = node.InnerText; break; case "a:Code": reference.Code = node.InnerText; break; case "a:Comment": reference.Comment = node.InnerText; break; case "a:Cardinality": reference.Cardinality = node.InnerText; break; case "a:UpdateConstraint": reference.UpdateConstraint = node.InnerText == "1" ? true : false; break; case "a:DeleteConstraint": reference.DeleteConstraint = node.InnerText == "1" ? true : false; break; case "c:ParentTable": reference.ParentTableID = node.FirstChild.Attributes["Ref"].Value; break; case "c:ChildTable": reference.ChildTableID = node.FirstChild.Attributes["Ref"].Value; break; case "c:ParentKey": reference.ParentKeyID = node.FirstChild.Attributes["Ref"].Value; break; case "c:Joins": reference.JoinList = ParseJoins(node.ChildNodes); break; default: break; } }//end parse reference if (package == null) { m.AddReference(reference); } else { package.AddReference(reference); } }//end parse references }