Професионална програма
Loading...
+ Нов въпрос
k.sevov avatar k.sevov 1073 Точки
Best Answer

Проблемът идва от 34-ти ред, тъй като листовете са референтни типове и за новата стойност му подава референция към същия лист, а не негово копие. В резултат на това и двете ентрита в речника сочат към един и същи лист и последващи промени в едното ще се отразят и на другото. Може би най-лесният вариант да му подадеш копие от листа е просто да го направиш d[x] = d[y].ToList(); 

1
iveta_peychinova avatar iveta_peychinova 0 Точки

Благодаря много! Вече дава 100/100 :)

0
TeodorStefanovPld avatar TeodorStefanovPld 1278 Точки
  1.   if (customerInfo.ContainsKey(customerName))

  2.                     {

  3.                         customerInfo.Remove(customerName);

  4.  

  5.                     }         

ето това парче код тук, това го имаше и на нашия изпит, значи вместо remove използвай customerinfo.Clear()...

оказа се че в речниците присвояването с = не работи както в листите. А и другото  доколкото разбирам е те искат да запазиш същия потребител но с полетите на другия. Не е нужно да го махаш а само да присвоиш. 

и реално като почистиш речника customerinfo[customer]=customerinfo[customer2] и така ще присвоиш само полетите. Сорри може да бъркам малко синтаксиса но от август горе долу съм писал малко C# че се занимавах с други неща.Ако се поровя ще намеря правилния синтаксис но си мисля че като разбереш идеята ще се оправиш.                                                                                                                                         

0
iveta_peychinova avatar iveta_peychinova 0 Точки

Благодаря за бързия отговор! Промених кода, но все още ми дава 70/100. 

0