【发布时间】:2009-07-28 07:59:17
【问题描述】:
我使用实体数据模型,但我有一个问题:如果一个表,例如客户有 categoryId(表类别的外键)它不会出现在 cutomers 实体中???? 那么我怎样才能检索或设置这个值呢?
【问题讨论】:
我使用实体数据模型,但我有一个问题:如果一个表,例如客户有 categoryId(表类别的外键)它不会出现在 cutomers 实体中???? 那么我怎样才能检索或设置这个值呢?
【问题讨论】:
实体框架本身会呈现实际属性,它将创建类型类别的属性。 即:
Customer.Category = new Category()
实体框架将在内部处理引用/外键。
【讨论】:
Colin 的回答是 100% 准确和真实的 - 对于当前可用的 Entity Framework 版本(带有 .NET 3.5 SP1)。
对于未来某个时间将随 .NET 4.0 一起发布的即将发布但尚未发布的 EF v2(或 EF 4??),EF 团队添加了他们所谓的“外键关联”,本质上是将允许您只指定外键值(例如 CategoryID),而不必创建/加载/分配整个关联实体。
在这些优秀的帖子中查看更多信息:
免责声明:这是关于尚未发布的产品的预发布信息,并且没有正式宣布交付日期 - 您现在可以下载 Beta1。
马克
【讨论】:
你不能这样吗?
Customer.CategoryReference.EntityKey = Key;
【讨论】:
如果你想看到它自己的外键,你必须使用 .NET 框架 4 不少于 在 .NET 3.5 中,您会找到对外键类的引用,而不是它自己的外键
Store s = new Store();
User u=s.User;//bring referance of the user with foreign key .net 3.5 & 4
int i = s.User_ID;//bring the user_id forein key .net 4
【讨论】: