Такое бывает тогда, когда DealID вручную меняют на записи, которая уже присутствует в базе.
Откуда взялись deals1? Выборка из контекста базы данных? Если да, то EntityFramework знает что эти записи уже есть в базе и отслеживает их изменения. Соответственно не дает поменять их идентификаторы явно и перезаписать их в базу повторно.