相关疑难解决方法(0)

EF 4 - 没有代理的延迟加载

我读过在需要使用延迟加载和更改跟踪时使用代理.换句话说,要使用延迟加载,我必须启用代理.

到现在为止还挺好.

关键是我可以使用下面的代码设置上下文不使用代理甚至使用延迟加载.

ctx = new SchoolEntities();
ctx.ContextOptions.ProxyCreationEnabled = false;
ctx.ContextOptions.LazyLoadingEnabled = true;
Run Code Online (Sandbox Code Playgroud)

ProxyCreationEnabled属性是仅与更改跟踪代理相关还是我遗漏了某些内容?

有人可以用一些细节解释一下吗?

谢谢!

EDIT1

我没有使用POCO/DbContext.我使用带有ObjectContext的常规edmx EF模型.我知道POCO实体的代理对于更改跟踪和延迟加载的重要性.为何在常规EDMX模型中使用Proxies?

c# asp.net entity-framework entity-framework-4

14
推荐指数
1
解决办法
3983
查看次数

一对多关系不起作用 - 实体框架

我在实体框架(我相信 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)
Run Code Online (Sandbox Code Playgroud)

Settings.SettingsTypeID对该引用有一个外键约束SettingsType.SettingsTypeID

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

但是,在尝试settingType根据所选检索对象时Setting,例如

var SettingsType = Setting.SettingsType;
Run Code Online (Sandbox Code Playgroud)

Setting.SettingsType总是回来null

我错过了什么吗?

c# entity entity-framework one-to-many

2
推荐指数
1
解决办法
2895
查看次数