我需要一些帮助来考虑我的业务对象的设计。我们的数据库记录了我们公司员工每天进出的时间。每条记录还存储员工的用户 ID、员工登录的工作站 ID,显然还有日期。
在任何给定日期,用户可以在任何数量的工作站有多个进入和退出时间。记录看起来像这样:
SignInID | UserID | WorkStationID | DateTimeEntry | DateTimeExit
我的asp.net 表单上有一个reportviewer,它必须显示按日期、工作站或用户分组的此进入和退出数据的报告。
例如,它必须显示特定日期的所有数据(在该日期内,按工作站排序)。
或者它必须显示给定工作站的所有数据(并在其中按日期排序)和其他类似格式。
到目前为止,我有一种方法很怪异,我选择了数据并构建了某种临时数据表以显示在我的表单上。我现在想使用对象重新设计,但我不知道如何设计层次结构,即什么对象包含进入和退出时间的集合,以及如何使其足够灵活以便可以查询它(也许使用 Linq? ) 基于各种显示标准?
我真的很想了解更多关于设计对象和使用正确的术语来做我想做的事情,所以如果你能给我一些解释这些概念的文章,那也会很有帮助。
编辑:好的,至少我学到了一些新东西。我正在尝试做的是 ORM - 对象关系映射 - 并且 .NET 有一个名为 Entity Framework 的内置 ORM 工具。到现在为止还挺好。现在我必须看看它是否可以帮助我弄清楚如何组织我的数据。