......叫什么?
更详细:对于我的应用程序,我创建了一个很好的业务模型来处理内存中的对象。这是存储和视图不可知的。现在,对于存储层,有一个数据库:我将构建SQL查询(越少越好),从相关表中选择/加入等我需要的所有数据。一种“中间层”获取查询结果并构造具有所有关系的业务对象。
问题:你怎么称呼这种方法?什么是最佳实践?
这发生在.NET C#项目中,但与此设计问题无关。
(我发现问题441532非常相似,但我对更多设计输入感兴趣)
注意:我没有采用依赖于自动执行此操作的工具的 ,因为应用程序只需要来自相对较大的数据库的选定数据。
答案 0 :(得分:1)
我认为它叫做ORM或对象关系映射。
NHibernate就是这样一个例子。
答案 1 :(得分:0)
它通常被称为DDD - 域驱动设计。
https://stackoverflow.com/questions/tagged/ddd
https://stackoverflow.com/questions/tagged/domain-driven-design
答案 2 :(得分:0)
有不同的ORM工具。 Linq to SQL做1:1,这不是你想要的。
您所谈论的内容与Domain Driven Design重叠,您的设计由域驱动,而不是数据库。
在这种情况下,如果您使用的是关系数据库,则仍需要ORM,而实体框架和NHibernate等ORM允许您以任何方式灵活地将实体“映射”到数据库中,其方式如下:如果您的数据库因任何原因需要更改,或者实体必须更改,无论出于何种原因,您需要更改的是中间的“映射”层。