public void CountCounter(Int64?parId) { try { if (parId != null) { if (count > 25) { throw new Exception(("Error at parent category Id" + parId)); } OiiOHaatDCDataContext dbContext = DatabaseHelper.GetDataModelDataContext(); var parentId = dbContext.SP_CategoryTree_GetCategoryParentID(parId).ToList().Single().ParentID; dbContext.Dispose(); //var parent = dbContext.Categories.SingleOrDefault(parIid => parIid.IID == parId); count++; CountCounter(parentId); } } catch (Exception ex) { throw new Exception(ex.Message, ex); } }