public IEnumerable<DDrink> Avatar_Delete(int drink_ID, DAvatar deleting, string username) { //drinks is a collection of all drinks belonging to given user. IDataRepository<DDrink> drinks = RepositoryFactory.Instance.Construct<DDrink>(username); DDrink parent; if((parent = drinks.FirstOrDefault(x => x.Drink_ID == drink_ID)) != null){ IDataRepository<DAvatar> avatars = RepositoryFactory.Instance.Construct<DAvatar>(parent.Drink_ID); if (deleting.DeleteValid()) { avatars.Update(deleting); //The drink has its avatar updated to reflect deletion in repository parent.avatar = null; parent.Avatar_ID = 0; } } return drinks; //Targetted drink belongs to different user. }