用于创建与其他实体有关系的ADO.NET实体的WinForm

时间:2010-06-15 15:45:51

标签: c# visual-studio entity-framework visual-studio-2010 ado.net

我是ADO实体框架的新手,我正在寻找最佳实践。

以下是该场景:我有一个带有Person表和Address表的数据库。 Person有一个引用Address主键的外键,一个自动递增的int。首先,我已经使用VS 2010创建了一个ADO实体模型,并且确实IDE能够理解这种关系。

现在我想创建一个Windows窗体,允许用户填写Person的基本信息和Address。通常,我只需将Person实体拖到空白的Windows窗体上,VS2010就会自动创建必要的字段以及绑定。但是,为了确保在用户填写此表单时发生以下情况,我需要做多少额外的工作:

  1. 表单的Address部分保存在Address
  2. Person信息保存在Person表格中,同时保存在1中创建的Address的主键。
  3. 用户从不接触/看到任何主键。
  4. 我认为我的困惑来自这样一个事实,即我希望IDE能够进行比预期更多的编码;如果我不得不快速破解这个,我可能会在“保存”按钮上添加一个点击事件,该按钮首先调用Address上的SaveChanges(),然后调用Person。这是最好的做法,还是有更可接受的做法?

1 个答案:

答案 0 :(得分:0)

你不应该多做额外的事情。但是你应该在Address和Person共同的DataContext上调用SaveChanges(以正确处理不同的插入/删除方案)。

您应该只删除与Keys相关的所有控件(列)。

你有特定的问题吗?