我想创建一个多层(3层)应用程序。 EF是首选的ORM。
我应该在我的表示层中直接使用EF创建的实体,还是应该创建新的自定义实体并映射实体?如果是这样,我应该在自定义权限之上创建接口吗?
我应该将EF生成的.edmx文件放在数据层中吗?
由于
答案 0 :(得分:3)
答案 1 :(得分:2)
数据库的需求和数据消费者的需求经常不一致,因此通常需要不同的模型。
例如,考虑添加新客户的用户故事。故事通常包括办公室电话号码和传真号码的“需要”。
马上,数据库设计师会选择“那是重复数据”我需要一对多的关系,这样我们不仅可以容纳两个电话号码,而且可以按类型容纳几乎无限数量的电话。 (让我们甚至不会陷入多对多或一对多的电话号码的痛苦)
同时回到报告,屏幕,移动设备,你有什么UI体验 - 设计师说“我不在乎你能存储多少个电话号码,我只想处理两个:办公室号码和传真号码“你可以说用户处于核心非规范化状态:”