public static int CountItems(List <Relationship> list, RelationSearchField searchField, string searchFor) { if (searchField == RelationSearchField.ToTableName) { return(list.Count(r => r.ToTableName == searchFor)); } else if (searchField == RelationSearchField.ToColumnName) { return(list.Count(r => r.ToColumnName == searchFor)); } else if (searchField == RelationSearchField.ToFieldName) { return(list.Count(r => r.ToFieldName == searchFor)); } else if (searchField == RelationSearchField.FromTableName) { return(list.Count(r => r.FromTableName == searchFor)); } else if (searchField == RelationSearchField.FromFieldName) { return(list.Count(r => r.FromFieldName == searchFor)); } else { return(0); } }
public int CountItems(RelationSearchField searchField, string searchFor) { var list = this; if (searchField == RelationSearchField.ToTableName) { return(list.Count(r => r.ToTableName == searchFor)); } else if (searchField == RelationSearchField.ToColumnName) { return(list.Count(r => r.ToColumnName == searchFor)); } else if (searchField == RelationSearchField.ToFieldName) { return(list.Count(r => r.ToFieldName == searchFor)); } else if (searchField == RelationSearchField.FromTableName) { return(list.Count(r => r.FromTableName == searchFor)); } else if (searchField == RelationSearchField.FromFieldName) { return(list.Count(r => r.FromFieldName == searchFor)); } else if (searchField == RelationSearchField.FromColumnName) { return(list.Count(r => r.FromColumnName == searchFor)); } else { return(0); } }
public IRelationshipList FindItems(RelationSearchField searchField, string searchFor) { var list = new RelationshipList(); foreach (var item in this) { if ((searchField == RelationSearchField.ToTableName) && (item.ToTableName == searchFor)) { list.Add(item); } else if ((searchField == RelationSearchField.ToColumnName) && (item.ToColumnName == searchFor)) { list.Add(item); } else if ((searchField == RelationSearchField.ToFieldName) && (item.ToFieldName == searchFor)) { list.Add(item); } else if ((searchField == RelationSearchField.FromTableName) && (item.FromTableName == searchFor)) { list.Add(item); } else if ((searchField == RelationSearchField.FromFieldName) && (item.FromFieldName == searchFor)) { list.Add(item); } else if ((searchField == RelationSearchField.FromColumnName) && (item.FromColumnName == searchFor)) { list.Add(item); } } return(list); }
/// <summary> /// Counts the number if itmes that exist that match the string in searchFor. this will search the field specified in searchField /// </summary> /// <param name="searchField">The search field.</param> /// <param name="searchFor">The search for.</param> /// <returns></returns> /// <exception cref="Exception"></exception> public int CountItems(RelationSearchField searchField, string searchFor) { var count = 0; foreach (IRelationshipList list in this.Values) { try { var relGroupSummary = list.AsSummary(); if ((searchField == RelationSearchField.ToTableName) && (relGroupSummary.ToTableName == searchFor)) { count++; } else if (searchField == RelationSearchField.ToColumnName) { foreach (var s in relGroupSummary.ToColumnName) { if (s == searchFor) { count++; } } } else if (searchField == RelationSearchField.ToFieldName) { foreach (var s in relGroupSummary.ToFieldName) { if (s == searchFor) { count++; } } } else if ((searchField == RelationSearchField.FromTableName) && (relGroupSummary.FromTableName == searchFor)) { count++; } else if (searchField == RelationSearchField.FromFieldName) { foreach (var s in relGroupSummary.FromFieldName) { if (s == searchFor) { count++; } } } else if (searchField == RelationSearchField.FromColumnName) { foreach (var s in relGroupSummary.FromColumnName) { if (s == searchFor) { count++; } } } } catch (Exception) { throw new Exception(string.Format("Cannot work with relationship {0}", list.AsNameAsCSV())); } } return(count); }