一对多关系不起作用 – entity framework

我在entity framework中创建一对多(或一对一?)关系时遇到问题(我相信3.5)。

示例表/模型:

Settings: SettingsID pk int not null SettingsName varchar(250) null SettingsTypeID fk int null SettingsType: SettingsTypeID pk int not null SettingsTypeName varchar(250) 

我在Settings.SettingsTypeID上有一个引用SettingsType.SettingsTypeID的外键约束。

保存设置(使用选定的settingstype )后,值保存正确(我已检查数据库以确保并且可以正确查看Setting.SettingsTypeID更新的值)。

但是,在尝试基于所选择的Setting检索settingType对象时,例如

 var SettingsType = Setting.SettingsType; 

Setting.SettingsType总是返回null

我错过了什么或?

您需要使用本文中有关加载相关对象(MSDN)所述的加载模式之一加载与您的Setting对象关联的SettingType对象。

我建议使用Include方法 ,如下所示:

 var setting = (from s in context.Settings.Include("SettingsType") where s.SettingsID == id select s).FirstOrDefault();