如何使用EntityFramework处理Master-Detail窗口?

时间:2016-06-22 19:07:37

标签: c# entity-framework master-detail

这是一个我无法找到任何微不足道的解决方案的问题,除了它是如此常见。我认为这个问题足够抽象,适用于WPF和Winforms

如果主人仍未保存,您是否允许插入儿童?

这迫使我们拥有一个内存中的项目集合,并在用户点击 save 按钮时保存主人和孩子

从现有母版删除子项时会发生什么情况?

如果用户进入窗口以编辑具有某些子节点的主实体,则应立即删除子节点,或者应该具有内容集合deletes,以便在用户复制时将其复制点击保存按钮。

这进一步使问题复杂化,因为程序应该在用户添加新子项然后将其删除时管理这种情况,因为这个孩子在数据库中不存在它不应该被添加到< em>删除列表

如果子实体拥有可以编辑的子项,会发生什么?

如果主 - 详细视图允许编辑详细信息实体,并且此实体的编辑窗口是另一个主 - 详细信息视图,则如果内部子项改变数据库或以某种方式保存延迟<,则保存按钮< / em>直到单击主保存按钮

您是否插入虚拟空主控以使逻辑更容易?

我认为在首次创建一个空主实体时更容易插入空主实体,并且主子代上的所有CRUD操作直接影响新创建的实体上的数据库,如果 cancel 按钮被命中,只需删除主人及其所有子女。 有没有人已经这样做了?

我在这里看到的问题是,某些表具有所需的值或外键,而这些键只能被赋予默认值

如果程序不允许用户添加子实体直到用户保存主详细信息窗口的标题数据,这将得到解决

0 个答案:

没有答案