public void AffiliateDelete(Gateway entity) { var query = _deviceManager.GetAll().Where(d => d.GatewayId == entity.Id); ArrayList list = new ArrayList(query.Count()); if (query.Any()) { foreach (var device in query) { list.Add((Device)device); } } foreach (var device in list) { _deviceManager.Delete((Device)device); } Delete(entity); }