在我正在开发的新系统中,我正在切换到更面向对象的ASP.NET Web 应用程序方法。
我有一个大多数人都会熟悉的通用结构。我有一个有多个部门的学校结构;属于一个部门的课程;和属于多个课程的学生。
在部门视图中,我列出了属于该部门的所有课程,并且我想要每门课程的汇总数据,例如入学人数、退学人数、男性/女性人数等。
然而,在个人课程视图中,我需要学生的实际列表以及他们的详细信息,例如他们是否注册、通过课程、性别等。
然后是单个学生视图,其中显示有关学生的所有详细信息,包括其他课程的注册、地址等。
以前,我会有一个数据访问层返回我在每种情况下需要的任何数据,并将其作为SQLDataReader
或返回DataSet
(在 VB.NET 中工作)。现在,我正在尝试以面向对象的方法对此进行建模,我在DAL中创建对象并将这些对象返回到BLL。当我需要对象中的聚合详细信息时,我不确定如何处理这个问题。例如,在带有课程列表的部门视图中,我将汇总每个课程。我会在那些轻量级课程对象存储聚合值的部门中存储一些轻量级课程对象的集合吗?
我想在不同的场景中需要不同级别的抽象,我不确定处理这个问题的最佳方法。我是否应该有一个对象模型,其中有一个存储聚合的非常基本的课程对象,以及一个存储完整细节的子对象?
另外,如果有任何有用的资源可以帮助我理解如何为这些东西建模,那就太好了。