初步了解了ASP.NET Portal Starter Kit后(我以前的文章),本来想继续重构代码的。在构思的时候想到要是能把五个入门套件结合在一起不是更好。Time Tracker(时间管理或项目追踪)是利用微软的Data Access Application Block作为数据库访问层的,我正好也要这样做,所以就先来看看ASP.NET Time Tracker Starter Kit。
ASP.NET Time Tracker Starter Kit(项目追踪入门套件),提供项目成员(顾问)于每一项项目中各类别所花费的时间,加予统计分析,相当于项目的「项目成员工时记录卡」。详细介绍可参见微软网站上的一片文章。像解读门户网站入门套件一样,还是先从数据库说起。
数据库中的表:
TT_Categories:项目目录信息
字段名 |
类型 |
含义 |
备注 |
CategoryID |
Int |
目录Id |
主键(自动编号) |
ProjectID |
Int |
所属项目Id |
关联项目信息表 |
Name |
Nvarchar(50) |
目录名称 |
|
Abbreviation |
Nvarchar(4) |
简写 |
|
EstDuration |
Decimal(9) |
预计持续时间 |
小数位两位(单位:小时) |
TT_EntryLog:项目成员工时记录卡
字段名 |
类型 |
含义 |
备注 |
EntryLogID |
Int |
记录Id |
主键(自动编号) |
Description |
Nvarchar(255) |
工作描述 |
|
Duration |
Decimal(9) |
完成工时 |
小数位两位 |
EntryDate |
SmallDatetime |
记录日期 |
|
ProjectID |
Int |
所属项目Id |
关联项目成员表 |
UserID |
Int |
所属用户Id |
|
CategoryID |
Int |
所属目录Id |
|
TT_ProjectMembers:项目成员表(通过此表可以反映:一个用户可以同时参与多个项目,一个项目也可有多个用户参与)
字段名 |
类型 |
含义 |
备注 |
ProjectID |
Int |
项目Id |
关联项目信息表 |
UserID |
Int |
项目成员Id |
关联用户信息表 |
TT_Projects:项目信息表
字段名 |
类型 |
含义 |
备注 |
ProjectID |
Int |
项目Id |
主键(自动编号) |
Name |
Nvarchar(50) |
项目名称 |
|
Description |
Nvarchar(1024) |
项目描述 |
|
ManagerUserID |
Int |
项目经理Id |
关联用户表 |
EstCompletionDate |
Datetime |
预计完成时间 |
|
EstDuration |
Decimal(9) |
预计持续时间 |
小数位两位(单位:小时) |
CreationDate |
Datetime |
创建事件 |
默认值:getdate() |
TT_Roles:角色信息表
字段名 |
类型 |
含义 |
备注 |
RoleID |
Int |
角色Id |
主键(自动编号) |
Name |
Nvarchar(50) |
角色名称 |
|
TT_Users:用户信息表
字段名 |
类型 |
含义 |
备注 |
UserID |
Int |
用户Id |
主键(自动编号) |
DisplayName |
Nvarchar(50) |
用户姓名 |
|
Password |
Nvarchar(50) |
密码 |
采用MD5的加密方式存储 |
UserName |
Nvarchar(50) |
登录名(用户Email) |
用于登录,并设置成唯一性索引(可防止注册相同的Email,这样设置后当有相同的Email插入时程序就会抛出异常,捕获这个异常就可判断Email是否重复,这样就可以省掉判断Email是否重复的代码) |
RoleID |
Int |
角色Id |
关联角色信息表(TT_Roles) |
数据库中的存储过程:(自带的文档中有详解,不赘述)
各表关系:
更多相关内容:点击这里>>
==========================================
作者:二十四画生
转载请注明来源于博客园——二十四画生的Blog,并保留有原文链接。