private async Task DeleteAllHeroPowers(Hero hero)
        {
            var heroPowersCollection = _context.HeroPowers
                                       .Where(hp => hp.HeroId == hero.Id)
                                       .AsAsyncEnumerable();

            await foreach (var hp in heroPowersCollection)
            {
                _context.Remove(hp);
            }

            await _context.SaveChangesAsync();
        }
Beispiel #2
0
        private async Task DeleteAllyTo(Hero hero)
        {
            var heroAlliesCollection = _context.HeroAllies
                                       .Where(ha => ha.AllyToId == hero.Id)
                                       .AsAsyncEnumerable();

            await foreach (var ha in heroAlliesCollection)
            {
                _context.Remove(ha);
            }

            await _context.SaveChangesAsync();
        }
        public async Task DeleteBadge(BadgeType badgeType, Hero hero)
        {
            if (hero.Badges.Count() > 0)
            {
                if (!HasBadgeByType(BadgeType.TierCategory5, hero))
                {
                    HeroBadge badgeToDelete = hero.Badges.Where(b => b.Badge.Tier == badgeType).FirstOrDefault();

                    _context.Remove(badgeToDelete);
                    await _context.SaveChangesAsync();
                }
            }
        }