我最近开始了一个小的 asp.net c# 项目,用于为日期安排资源。手头的具体任务是允许我在某些日子将工人分配给工作几个小时。基本上这样我就可以检查谁在做什么,在工作上花了多少时间等等。
我想与社区核实处理此类场景的标准方法,并就我概述的 bdlow 预期方法获得一些反馈。特别是我对适合此应用程序和数据库结构的 UI 控件感兴趣。
这是我计划做的,但似乎有点麻烦,我希望有一种更简单的方法我错过了。
数据库结构
表:Job,列:Id、JobNumber、Description、HoursAllocated
表
:Employee,列:Id、Name
表:EmployeeJob:JobId、EmployeeId、Date、Hours
UI
创建一个 DataTable,其中每个作业都有一行,并在接下来的 3 个月中为每一天添加一列。添加日期列时,我会检查任何 EmpployeeJob 记录并添加当天的小时数。数据表将绑定到 UI 中的 DataGrid,用户可以滚动查看网格,查看谁在做什么以及何时工作。
对当前方法的担忧
我已经进行了一些快速测试,这种方法似乎很慢。我已经研究了特定的调度 asp.net 控件,但似乎没有什么是理想的,为了简单起见,我想使用标准控件。
我的测试显示为大约 500 个工作构建 DataTable,耗时 3 个月,只有几个计划测试的员工花费了大约 10 秒的时间。这让我考虑将日历日期也存储到数据库中,但这似乎有点矫枉过正,并且需要维护或填充未来的数据。我正在使用实体数据模型并通过 linq 从后面的代码访问表。
您将用于安排员工工作的开发方法/数据结构/控件是什么?