Beispiel #1
0
        private List <List <string> > ComputeAStar(DataTable sourceData)
        {
            DataTable temp = sourceData.Copy();
            IEqualityComparer <DataRow> comparer = new RowChecker();
            var colCount = sourceData.Columns.Count - 1;
            List <List <string> > tempAStar = new List <List <string> >();

            //Retrieve AStar
            foreach (var row in sourceData.AsEnumerable().Distinct(comparer))
            {
                var same = temp.AsEnumerable().Where(t => comparer.Equals(t, row)).Select(t => t.Field <string>("ID")).ToList();
                if (same.Count > 0)
                {
                    tempAStar.Add(same);
                }
            }
            return(tempAStar);
        }