我有具有 LinkedArticles 能力的表格文章,所以基本上當用戶預覽例如“Iphone 13”鏈接的文章可能是“Iphone Charger”或“AirPads”等。
這是我的物體:
public class Article : BaseEntity<long>, IDeleted
{
public long? BrandId { get; set; }
public Brand Brand { get; set; }
public string Title { get; set; }
public string ShortDescription { get; set; }
public string Description { get; set; }
public ICollection<LinkedArticle> LinkedArticles { get; set; }
public bool Deleted { get; set; }
}
鏈接的文章如下所示:
public class LinkedArticle : BaseEntity<long>, IDeleted
{
public long ArticleId { get; set; }
public Article Article { get; set; }
public long RelatedArticleId { get; set; }
public Article RelatedArticle { get; set; }
public bool Deleted { get; set; }
}
所以基本上我想在這個表 LinkedArticles 中保存相關文章,例如文章 id 5 可以有幾個不同的文章與 id 5 相關。
但是當我嘗試添加遷移時,出現以下錯誤:
無法確定型別為“ICollection”的導航“Article.LinkedArticles”表示的關系。手動配置關系,或使用“[NotMapped]”屬性或使用“OnModelCreating”中的“EntityTypeBuilder.Ignore”忽略此屬性。
這里發生了什么?我添加ICollection<LinkedArticle>到Article.cs是因為我希望能夠從文章物體中查詢鏈接的文章。
uj5u.com熱心網友回復:
你可以有一個從文章到文章的參考。看看這里:
FK 到同表代碼優先物體框架
那么您不需要單獨的 LinkedArticle 物體。
uj5u.com熱心網友回復:
這應該是多對多的關系。文章可以有很多鏈接文章,但是鏈接文章可以鏈接到很多文章。
看看這個檔案:https : //docs.microsoft.com/en-us/ef/core/modeling/relationships? tabs = fluent-api,fluent-api-simple-key,simple-key#many- to -許多
例如(帖子可以有很多標簽,但標簽可以分配給很多帖子):
public class Post
{
public int PostId { get; set; }
public string Title { get; set; }
public string Content { get; set; }
public ICollection<Tag> Tags { get; set; }
}
public class Tag
{
public string TagId { get; set; }
public ICollection<Post> Posts { get; set; }
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/350051.html
