protected override void Initialize() { this.parentRelationNames = new List <string>(); this.childRelationNames = new List <string>(); DataTable table = this.List as DataTable; if (table == null && this.List is DataView) { table = ((DataView)this.List).Table; } if (table == null) { return; } this.Properties = ListBindingHelper.GetListItemProperties(table); this.Name = table.TableName; for (int i = 0; i < table.ChildRelations.Count; i++) { DataTable childTable = table.ChildRelations[i].ChildTable; if (childTable == table) { this.ChildRelations.Add(new SelfReferenceRelation(childTable, table.ChildRelations[i].ParentColumns[0].ColumnName, table.ChildRelations[i].ChildColumns[0].ColumnName)); } else { DataSetObjectRelation child = new DataSetObjectRelation(childTable); child.Parent = this; for (int j = 0; j < table.ChildRelations[i].ParentColumns.Length; j++) { child.parentRelationNames.Add(table.ChildRelations[i].ParentColumns[j].ColumnName); } for (int j = 0; j < table.ChildRelations[i].ChildColumns.Length; j++) { child.childRelationNames.Add(table.ChildRelations[i].ChildColumns[j].ColumnName); } this.ChildRelations.Add(child); } } }
protected override void Initialize() { this.parentRelationNames = new List <string>(); this.childRelationNames = new List <string>(); DataTable dataTable = this.List as DataTable; if (dataTable == null && this.List is DataView) { dataTable = ((DataView)this.List).Table; } if (dataTable == null) { return; } this.Properties = ListBindingHelper.GetListItemProperties((object)dataTable); this.Name = dataTable.TableName; for (int index1 = 0; index1 < dataTable.ChildRelations.Count; ++index1) { DataTable childTable = dataTable.ChildRelations[index1].ChildTable; if (childTable == dataTable) { this.ChildRelations.Add((ObjectRelation) new SelfReferenceRelation((object)childTable, dataTable.ChildRelations[index1].ParentColumns[0].ColumnName, dataTable.ChildRelations[index1].ChildColumns[0].ColumnName)); } else { DataSetObjectRelation setObjectRelation = new DataSetObjectRelation((object)childTable); setObjectRelation.Parent = (ObjectRelation)this; for (int index2 = 0; index2 < dataTable.ChildRelations[index1].ParentColumns.Length; ++index2) { setObjectRelation.parentRelationNames.Add(dataTable.ChildRelations[index1].ParentColumns[index2].ColumnName); } for (int index2 = 0; index2 < dataTable.ChildRelations[index1].ChildColumns.Length; ++index2) { setObjectRelation.childRelationNames.Add(dataTable.ChildRelations[index1].ChildColumns[index2].ColumnName); } this.ChildRelations.Add((ObjectRelation)setObjectRelation); } } }