Это мой код, очень просто ...
var newUser = new User();
newUser.Id=id;
newUser.Email = email;
this.DataContext.Set<User>().Add(newUser);
this.DataContext.SaveChanges();
Ошибка, которую я получаю - это sqlexception на this.DataContext.SaveChanges();
, в которой говорится:
Невозможно вставить значение NULL в столбец 'Id', таблица
'xxxxx.dbo.Users'; столбец не допускает пустых значений. Вставить не удается.
Я отладил и обнаружил, что в Id & Email есть значение в newUser
this.DataContext.Set<User>().Add(newUser);
Если это так, как значение становится нулевым?
Трассировка стека ошибок:
[DbUpdateException: An error occurred while updating the entries. See the inner exception for details.]
System.Data.Entity.Internal.InternalContext.SaveChanges() +204
System.Data.Entity.Internal.LazyInternalContext.SaveChanges() +23
System.Data.Entity.DbContext.SaveChanges() +20
Я не смог понять или решить это ...
Искренне признателен за любую помощь в этом ...
С уважением
Арнаб
Решение
Хорошо, спасибо Ладиславу, чтобы указать мне правильное направление:
Добавление атрибута [DatabaseGenerated(DatabaseGeneratedOption.None)]
решило проблему.