我有一个关于EF4的新手问题。
假设我在EDMX中有一个班级City
,另一个班级名为State
。
城市如下:
Id
Description
State (obj)
这就是国家:
Id
Description
Cities (obj collection)
我的问题非常简单。
当我创建城市并设置其状态city.State = stateX
时,EF会自动将我的城市添加到state.Cities
吗?或者我必须手动设置吗?
感谢。
答案 0 :(得分:2)
嗯,这取决于。
首先,您首先使用模型,首先使用数据库还是首先使用代码?
在模型优先中,您可以通过EDMX生成模型,然后让它为您创建数据库。只要两个实体之间存在关系,就会生成外键,并且您将具有预期的行为。
在数据库中,第一个几乎是相同的,但是你首先创建数据库(使用外键和所有其他东西),然后从中导出EDMX模型。同样,如果数据库结构正确,没有问题。
在Code First中,您可以创建您所描述的POCO对象(无论如何),然后通过流畅的界面配置关系。如果正确配置,生成的数据库将具有正确的外键,并且再次具有预期的方案。