У меня есть ребенок действие со следующим фрагментом кода:Child действия - добавление нескольких элементов в
public ActionResult MyAction()
{
var models = GetModelsFromDb();
var counts = new Dictionary<int, int>();
foreach (var model in models)
if (!counts.ContainsKey(model.Id))
counts.Add(model.Id, 0);
return View(count);
}
Проблема заключается в том, что ... Add
иногда бросает An item with the same key has already been added.
исключения. Может быть проблема параллелизма? Я не думаю, так как код находится в дочернем действии, а словарь - это локальная переменная.
Вопрос: это возможно, что «модель» может присутствовать в два раза по любой причине, когда НУ получить от вашего метода GetModelsFromDb? Edit1: Вы можете добавить реализацию GetModelsFromDBb(), если возможно – OrcusZ
Да, поэтому я делаю проверку перед добавлением элемента в словарь. – pwas
Хорошо, я напишу ответ – OrcusZ