![](/img/trans.png)
[英]DbUpdateException when adding item to Entity Framework Context
[英]Entity Framework - DbUpdateException when adding entity
我試圖使用實體框架記錄添加到表中,我得到DbUpdateException
當我執行這種方法_entities.SaveChanges();
:
public Player CreatePlayer(int fideNumber, string name, string surname, DateTime birthDate, double? rating = null)
{
var player = _entities.Players.Add(new Player
{
Id = fideNumber,
BirthDate = new DateTime(birthDate.Year, birthDate.Month, birthDate.Day),
Name = name,
Surname = surname,
Rating = 1500
});
_entities.SaveChanges();
return player;
}
我的Player
模型如下所示:
public partial class Player
{
public Player()
{
this.Tournaments = new HashSet<Tournament>();
this.GamesAsWhite = new HashSet<Game>();
this.GamesAsBlack = new HashSet<Game>();
}
public int Id { get; set; }
public string Name { get; set; }
public string Surname { get; set; }
public System.DateTime BirthDate { get; set; }
public Nullable<double> Rating { get; set; }
public virtual ICollection<Tournament> Tournaments { get; set; }
public virtual ICollection<Game> GamesAsWhite { get; set; }
public virtual ICollection<Game> GamesAsBlack { get; set; }
}
我先通過設計器創建了模型,然后生成了數據庫。 以這種方式創建比賽可以正常進行,但是由於某些原因,玩家創建會引發錯誤。 字段Id
的類型為Computed
。
由於您的Id字段是Identity
,因此您不應為其分配值。 SQL Server將為其分配一個新的Identity
值。
刪除行Id = fideNumber
另外,如果您需要自己設置Id
的值,則不應將Identity
用作列,而應將StoreGeneratedPattern
設置為none
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.