private static void ExtractForeignKey( System.ComponentModel.BindingList <DataModel.MetadataItem> list, ActiveQueryBuilder.Core.MetadataItem mi, int parentID ) { if (mi == null) { return; } var o = ExtractItem(list, mi, parentID); o.FieldType = null; { ActiveQueryBuilder.Core.MetadataForeignKey m = mi as ActiveQueryBuilder.Core.MetadataForeignKey; o.ReferencedObject = m.ReferencedObject.NameFull; // for (int i = 0; i < m.ReferencedObjectName.Count; i++) { ActiveQueryBuilder.Core.MetadataQualifiedNamePart x = m.ReferencedObjectName[i]; o.ReferencedObjectName += "[" + System.Enum.GetName(typeof(ActiveQueryBuilder.Core.MetadataType), x.Type) + ":" + x.Name + "]" ; } // o.ReferencedFieldsCount = m.ReferencedFields.Count; for (int i = 0; i < m.ReferencedFields.Count; i++) { o.ReferencedFields += "[" + m.ReferencedFields[i] + "]" ; } // o.ReferencedCardinality = System.Enum.GetName(typeof(ActiveQueryBuilder.Core.MetadataForeignKeyCardinality), m.ReferencedCardinality); // o.FieldsCount = m.Fields.Count; for (int i = 0; i < m.Fields.Count; i++) { o.Fields += "[" + m.Fields[i] + "]" ; } // o.Cardinality = System.Enum.GetName(typeof(ActiveQueryBuilder.Core.MetadataForeignKeyCardinality), m.Cardinality); } }
private static void ExtractForeignKey( System.Data.DataRow row , ActiveQueryBuilder.Core.MetadataItem mi , int parentID , System.Data.DataTable tbl ) { if (mi == null) { return; } ExtractItem(row, mi, parentID, tbl); row["FieldType"] = null; { ActiveQueryBuilder.Core.MetadataForeignKey m = mi as ActiveQueryBuilder.Core.MetadataForeignKey; row["ReferencedObject"] = m.ReferencedObject.NameFull; // for (int i = 0; i < m.ReferencedObjectName.Count; i++) { ActiveQueryBuilder.Core.MetadataQualifiedNamePart x = m.ReferencedObjectName[i]; row["ReferencedObjectName"] += "[" + System.Enum.GetName(typeof(ActiveQueryBuilder.Core.MetadataType), x.Type) + ":" + x.Name + "]" ; } // row["ReferencedFieldsCount"] = m.ReferencedFields.Count; for (int i = 0; i < m.ReferencedFields.Count; i++) { row["ReferencedFields"] += "[" + m.ReferencedFields[i] + "]"; } // row["ReferencedCardinality"] = System.Enum.GetName(typeof(ActiveQueryBuilder.Core.MetadataForeignKeyCardinality), m.ReferencedCardinality); // row["FieldsCount"] = m.Fields.Count; for (int i = 0; i < m.Fields.Count; i++) { row["Fields"] += "[" + m.Fields[i] + "]" ; } // row["Cardinality"] = System.Enum.GetName(typeof(ActiveQueryBuilder.Core.MetadataForeignKeyCardinality), m.Cardinality); } }