0
存儲數據時,我收到了一個非常奇怪的事件。 我的表格使用Guid作爲主要ID,出於某種原因,它爲所有新條目記錄相同的Guid。不生成唯一的GUID
表構建
public class Checkpoint
{
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public Guid Id { get; set; }
[Required]
public string Title { get; set; }
public DateTime? CreatedOn { get; set; }
public DateTime? ModifiedOn { get; set; }
}
public class Track
{
public Track()
{
Checkpoints = new List<Checkpoint>();
}
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public Guid Id { get; set; }
[Required]
public List<Checkpoint> Checkpoints { get; set; }
public DateTime? CreatedOn { get; set; }
public DateTime? ModifiedOn { get; set; }
}
代碼段從模型轉換爲存儲在跟蹤新的關卡列表。
var trackObject = new Track();
var checkpointList = model.Checkpoints.ConvertAll(x => new Checkpoint {Title = x.Title});
trackObject.Checkpoints.Add(checkpointList);
db.Track.Add(trackObject);
await db.SaveChangesAsync();
檢查點表的結果(ⅰ被遺漏的外鍵指向跟蹤對象):
ID | TITLE | CREATED_ON
--------------------------------------------------------------------------------
c3451b2b-bb30-e711-b867-f01faf23929d | First | 4/05/2017 11:16:50 AM
c5451b2b-bb30-e711-b867-f01faf23929d | Second | 4/05/2017 11:16:50 AM
c6451b2b-bb30-e711-b867-f01faf23929d | Third | 4/05/2017 11:16:50 AM
c7451b2b-bb30-e711-b867-f01faf23929d | Sprint | 4/05/2017 11:16:50 AM
c8451b2b-bb30-e711-b867-f01faf23929d | Home | 4/05/2017 11:16:50 AM
c9451b2b-bb30-e711-b867-f01faf23929d | Finish | 4/05/2017 11:16:50 AM
如可看到的所有ID字段是相同的。 代碼中的錯誤在哪裏?
你忘了把屬性[Key]放在你的ID上嗎? – Lenny32
他們不一樣。它們在第一部分都是不同的。這是因爲它是一個SequentialGuid。 –