2017-05-29 96 views
2

雖然我也跟着文章here我不斷收到同類型錯誤的物性檢測自參照環1.1方案

自參照環「...」「...」 。路徑'[4] .... [0]'。

我已經加入這個我Startup.cs

services.AddMvc() 
    .AddJsonOptions(opt => 
     opt.SerializerSettings.ReferenceLoopHandling = 
      ReferenceLoopHandling.Ignore 
    ); 

還有什麼可能會導致循環引用錯誤?

編輯: 答案在註釋的問題... 受影響的類別是:

public partial class GuidingSymptom 
    { 
     public GuidingSymptom() 
     { 
      VideosGuidingSymptoms = new HashSet<VideosGuidingSymptoms>(); 
     } 
     [Key] 
     [DatabaseGenerated(DatabaseGeneratedOption.Identity)] 
     public int Id { get; set; } 
     [MaxLength(70)] 
     [Required] 
     public string Name { get; set; } 
     public string Description { get; set; } 

     public int SeverityId { get; set; } 
     public int? DiagnoseId { get; set; } 

     [InverseProperty("GuidingSymptom")] 
     public virtual ICollection<VideosGuidingSymptoms> VideosGuidingSymptoms { get; set; } 
     [ForeignKey("DiagnoseId")] 
     [InverseProperty("GuidingSymptom")] 
     public virtual Diagnose Diagnose { get; set; } 
     [ForeignKey("SeverityId")] 
     [InverseProperty("GuidingSymptom")] 
     public virtual GuidingSymptomSeverity Severity { get; set; } 
    } 

public partial class VideosGuidingSymptoms 
{ 
    public int VideoId { get; set; } 
    public int GuidingSymptomId { get; set; } 

    [ForeignKey("GuidingSymptomId")] 
    [InverseProperty("VideosGuidingSymptoms")] 
    public virtual GuidingSymptom GuidingSymptom { get; set; } 
    [ForeignKey("VideoId")] 
    [InverseProperty("VideosGuidingSymptoms")] 
    public virtual Video Video { get; set; } 
} 
+0

這時候就沒有必要顯示違規類 – Nkosi

+0

@Nkosi添加答案的問題 – mJay

+0

可能的複製的定義[JSON.NET錯誤自引用類型檢測迴路(HTTPS: //stackoverflow.com/questions/7397207/json-net-error-self-referencing-loop-detected-for-type) –

回答

1

我找到了解決方案,它是

[JsonIgnore] 

註釋添加到受影響的屬性。不過,我預計使用ReferenceLoopHandling.Ignore