2012-06-19 81 views
0

我刚刚为我的项目设置了EF4Templates并生成了POCO实体。在生成POCO实体之前,我使用了普通的EF实体。我是POCO实体的新手,我确信我错过了某个步骤。我的POCO实体没有选择我的数据库模型的关系。当我使用EF模型时,他们工作得很好。例如,我有两个名为Appointments and Services的表。在使用POCO实体之前,我可以像这样访问约会的服务:POCO实体中的关系

var svc = appointment.Service; 

但是现在它返回一个Null与POCO。我究竟做错了什么?将非常感谢一些帮助。

很多谢谢。

回答

0

您需要有一个proxie跟踪导航属性。如果导航属性被声明为public virtural,这将自动完成。

class Dog{ 
    public int Id {get; set;} //CF will automatically recognise this as a primary key 
    public virtual <List>Leg Legs{get; set;} //automagical navigation property 
} 

class Leg{ 
    public int Id {get; set;} //idem 
    public virtual Dog PartOf {get; set;} //automagical navigation property 
} 
+0

请问您能详细说明我该如何声明导航属性为公共虚拟?抱歉,我对POCO实体非常陌生。 – aliirz

+0

好吧,就像那样;)我会编辑答案,以便更详细一点。 – Martijn

+0

仍然无法正常工作..我宣布导航属性为公共虚拟... – aliirz