public void RefreshCacheDuplProductByCompany(long CompanyID) { Dictionary <string, int> dicCheckDup = new Dictionary <string, int>(); DataTable tblProductName = _productAdapter.GetProductNameValidOfCompany(CompanyID); foreach (DataRow rowProduct in tblProductName.Rows) { string ProductName = rowProduct["Name"].ToString(); if (!dicCheckDup.ContainsKey(ProductName)) { dicCheckDup.Add(ProductName, 1); } else { dicCheckDup[ProductName] = dicCheckDup[ProductName] + 1; } } string NameMax = ""; int CountMax = 0; foreach (var item in dicCheckDup) { if (item.Value > CountMax) { NameMax = item.Key; CountMax = item.Value; } } _productAdapter.UpdateMaxDup(CompanyID, CountMax, NameMax); log.Info("Checked for company:" + CompanyID + ":" + CountMax); }