Beispiel #1
0
 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);
     }
 }
Beispiel #2
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);
            }
        }
Beispiel #3
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);
        }
Beispiel #4
0
        /// <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);
        }