簡體   English   中英

使用 Entity Framework Core 時防止循環父/子數據

[英]Preventing cyclic Parent/Child data when using Entity Framework Core

給定一個包含對其父級(鄰接列表)的引用的數據模型:

class Foo
{
   public int Id { get; set; }
   virtual Foo Parent { get; set; }
}

如何保證不會將循環引用提交給數據庫?

好的:

a
  b
    c

不好:

a
  b
    c
      a

這是我可以通過設置隔離級別(可序列化)來做到的嗎? 這最好在數據庫本身中使用某種觸發器來完成嗎? 我應該為我的分層數據使用不同的模型嗎?

如果我正確理解您的問題,我認為將以下內容放在“父”類中就足夠了:

    [JsonIgnore] //if you will ever Serialize it
    [ForeignKey("OrderProductionNumber")] //using System.ComponentModel.DataAnnotations.Schema;
    public virtual Foo Parent { get; set; }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM