Остаются ли новые объекты в памяти? - C#
Формулировка задачи:
Подскажите. Имеем объект db. Делаю запрос. существует ли запись. Если да заполняю его, если нет - создаю новый:
Вопрос:
Остаются ли НОВЫЙ объекты в памяти?
Т.к. я добавляю порядка 2 млн записей, со временем у меня копится оперативка. Возможно ли как то обнулить его принудительно? (GC не помог)
using (var context = new DBcon()) { mainDB db = (from c in context.test where c.nProizv == NProizv select c).FirstOrDefault(); if (db != null) { db.update_date = DateTime.Now; db.delete_date = null; } else { db = new mainDB(); db.update_date = DateTime.Now; context.test.Add(db); } ..добавление данных в объект db.. context.savechanges(); }
Решение задачи: «Остаются ли новые объекты в памяти?»
textual
Листинг программы
foreach (string l in File.ReadLines(path, Encoding.GetEncoding(1251))) //open file & reading row { .. достаю nProizv из строки. using (var context = new DBcon()) //открываю соединение { //сравниваю nProizv с БД mainDB db = (from c in context.test where c.nProizv == NProizv select c).FirstOrDefault(); if (db != null) {//если есть, заполняю объект maindb db.update_date = DateTime.Now; db.delete_date = null; } else {//если нет, создаю новый объект mainDB db = new mainDB(); db.update_date = DateTime.Now; context.test.Add(db); } //Делаю полный парсинг строки. Присваиваю объекту значения: db.debtor = кусок строки; db.adress = кусок строки; .... и т.д. context.savechanges();//сохраняю объект db = null; }//ЗАКРЫВАЮ соединение } //конец строки, идём к следующей.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д