Повтор ID при Insert
Нужно, чтобы вместо Update при обновлении записи добавлялась новая (Insert). Репозиторий реализован следующим образом: ловлю Duplicate entry '' for key 'products.PRIMARY'. Подскажите, что нужно сделать, как-то сгенерировать новый ID и потом кидать Insert, или я вообще не в ту сторону думаю?
public abstract class BaseRepository<TEntity> : IRepository<TEntity> where TEntity : class
{
protected DbContext eContext;
protected DbSet<TEntity> dbSet;
public BaseRepository(ApplicationDbContext context)
{
eContext = context;
eContext.ChangeTracker.QueryTrackingBehavior = QueryTrackingBehavior.NoTracking;
dbSet = eContext .Set<TEntity>();
}
public List<TEntity> GetAll()
{
return dbSet.ToList();
}
public TEntity FindById(int id)
{
return dbSet.Find(id);
}
public void Insert(TEntity entity)
{
dbSet.Add(entity);
eContext.SaveChanges();
}
public void Update(TEntity entity)
{
if (dbSet.Contains(entity))
dbSet.Update(entity);
else
dbSet.Add(entity);
eContext.SaveChanges();
}
}