Обычно я вставляю строку, удаляю эту строку, затем снова вставляю новую строку с тем же ключом. Он выдаст исключение в последней строке savechanges: «AcceptChanges не может продолжаться, потому что значения ключа объекта конфликтуют с другим объектом в ObjectStateManager. Убедитесь, что значения ключа уникальны, прежде чем вызывать AcceptChanges». Я подтвердил, что вызов deleteobject работает. Как я могу сообщить объектному администратору состояний, что запись исчезла и ее можно вставить заново?
Maps _newMaps = new Maps();
_newMaps.map_page = "BLA";
_newMaps.descr = "BLA test";
opendb.AddToMaps(_newMaps);
opendb.SaveChanges(true);
foreach (var mapsrec in opendb.Maps)
{
opendb.DeleteObject(mapsrec);
}
opendb.SaveChanges(true);
Maps _sameMaps = new Maps();
_sameMaps.map_page = "BLA";
_sameMaps.descr = "BLA test";
opendb.AddToMaps(_sameMaps);
opendb.SaveChanges(true);