I first learned the ASP.NET Portal Starter Kit (my previous article), I originally wanted to continue to refactor the code. It is not better to combine five entry suits when thinking. Time Tracker (Time Management or Project Tracking) is the use of Microsoft's Data Access Application Block as a database access layer, so I just want to do this, so let's take a look at the ASP.NET TIME TRACKER STARTER KIT.
ASP.NET TIME TRACKER STARTER KIT (Project Tracking Instruments), providing project members (consultants), gravity, gravity, and statistical analysis, equivalent to the project's "project member workers". " Detailed introduction to a piece of article on the Microsoft website. Like interpretation portals, it is the same as the database.
Table in the database:
Tt_categories: project directory information
Field Name Type Meaning Remarks CategoryId INT Directory ID Primary Key (Auto Number) ProjectID Int Item ID Association Project Information Table Name NVARCHAR (50) Directory Name Abbreviation NVARCHAR (4) Shop Estduration Dechar (9) Expected Duration Digital 2 (Unit) :hour)
TT_ENTRYLOG: Record card when project member work
Field Name Type Meaning Remarks ENTRYLOGID INT Record ID Primary Key (Auto Number) Description NVARCHAR (255) Work Description Duration Decalog Decoction Double EntryDate SmallDateTime Record Date ProjectId Int Int Id Id Item Member Table UserId Int User ID CategoryID Int Contents ID
TT_ProjectMembers: Project member table (can be reflected by this table: a user can participate in multiple items at the same time, one project can also participate in multiple users)
Field Name Type Meaning Remarks ProjectID INT Project ID Association Project Meter UserId Int Project Member ID Association User Information Table
TT_Projects: Project Information Form
Field Name Type Meaning Remark ProjectID INT Project ID Primary Key (Auto Number) Name NVARCHAR (50) Project Name Description NVARCHAR (1024) Item Description ManagerUserid Int Project Manager ID Association User Table EstcompletionDate DateTime Expected Completion Decimal (9) Expected Duration Decimal Bit (unit: hours) CreationDate DateTime Create an event default value: getdate ()
TT_Roles: Role Information Table
Field Name Type Meaning Remarks RoleId INT Role ID Primary Key (Auto Number) Name NVARCHAR (50) Role Name
TT_USERS: User Information Table
Field Name Type Meaning Remarks UserId INT User ID Primary Key (Auto Number) DisplayName NVARCHAR (50) User Name Password Nvarchar (50) Password Adding User Nvarchar (50) Login (User Email) Used to Login, and Set Unique index (can prevent the same email from registration, so after setting the same Email insertion, the program will throw an exception, capture this exception can determine if the email is repeated, so you can save whether the email is duplicated. ) The storage process in the RoleId INT Role ID Association Role Information Table (TT_Roles) database: (detailed in the documentation, do not repeat)
Each table relationship:
Time Tracker
Different relationships in each data sheet
Portal
There is a strong constraint between the tables. It is better to do in the integrity constraint. From the relationship in each table, it is a third paradigm in accordance with the data design. More related content: Click here >>