我首先在EF6中使用数据库,让我们说我有一个名为Article
的表,其中包含ArticleID
,title
,text
)
使用articleID
作为主键。
然后我添加一个名为RelatedArticle
的表(ArticleID
,RelatedArticleID
),主键是articleid和relatedarticleid,外键返回到文章中。
我遇到的问题是,当我将其拉入edmx文件时,仅将RelatedArticles
设置为文章的导航属性,因此当我去删除时,它只会提取relatedarticles
articleid
id
所在的文章context.RelatedArticles.Where(ra => ra.ArticleID == articleID OR
ra.RelatedArticleID == articleID)
我试图删除。你可以想象,我需要能够说出
删除任何记录,其中articleid或相关的articleid是我尝试删除的当前文章的ID。
或者我得到了大胆的FK约束错误。
通常情况下,当这种情况发生时,我至少会有一个"表"脱离上下文,我可以手动查询并杀死我需要的东西。 (例如:
{{1}}
但就像我说的那样,它只会将相关文章作为文章本身的导航属性。
想法?