Софтуерно Инженерство
Loading...
+ Нов въпрос
totev94 avatar totev94 12 Точки

Heroes C# Advanced Exam

Условие - https://pastebin.com/8SnQpuGj

Клас Hero - https://pastebin.com/yBNpX9Y7

Клас Item - https://pastebin.com/GLjmwsX4

Клас HeroRepository - https://pastebin.com/nKJyjV1x

 

90/100 ми дава, гърми на тест 6.

Моля за съвети и насоки, предпочитам сам да намеря отговора вместо готово решение.

Благодаря предварително!

Тагове:
0
C# Advanced
krasizorbov avatar krasizorbov 141 Точки
Best Answer

Здравей,

Проблема е тук:

public void Remove(string name)
        {
            foreach (var hero in this.heroList)
            {
                if (hero.Name == name)
                {
                    this.heroList.Remove(hero);
                }
            }
        }

Направи го така:

public void Remove(string name)
        {
            heroList = heroList.Where(x => x.Name != name).Select(y => y).ToList();
        }

Когато премахваш избягвай ForLoop използвай LinQ

1
21/07/2019 20:33:31
totev94 avatar totev94 12 Точки

Благодаря!

0