我在ms sql server 2008 R2中有2个表,其中一个表与另一个表有外键关系
非常简单:
tableA
prefix nchar(10)
value nchar(50)
tableB
prefix nchar(10)
value nchar(50)
ALTER TABLE [dbo].[tableB]
WITH CHECK ADD CONSTRAINT [FK_TableA_TableB] FOREIGN KEY([prefix])
REFERENCES [dbo].[TableA] ([prefix])
我使用管理工作室编辑表填写表格中的数据。确保tableB
中的每个前缀在tableA
中都有匹配的前缀。
然后我将表导入Visual Studio C#以创建实体框架模型。
一切似乎工作正常,直到我开始使用导航手柄从tableA
tableB
引用数据,它是空手而归。
即。 tableB.tableA
出现为空。
是否需要在实体框架和/或ms sql server中更新外键关系?
答案 0 :(得分:2)
为了帮助处理类似问题的其他人,我发布了我认为的解决方案。事实证明我假设引用是在Entity Framework中自动加载的。为了获得更新,需要像这样明确地加载引用
if (!tableB.tableAs.IsLoaded)
tableB.tableAs.Load();