系统功能分析
完善的用户权限管理,分为管理员、教师、学生等不同角色。
- 学生无需注册登陆,可以查看系统中的导师,以及导师的信息和科研成果
- 教师需要注册和登陆,教师注册需要管理员批准方可使用。教师登录系统后可以对自己的个人资料,论文,项目,专利,软件著作权,专著,指导学生获奖记录进行管理。
- 管理员不能注册,登录进系统后可以对个人信息的管理,对教师用户的管理,对系统公告的管理。
实现对科研成果的管理,包括论文、专利(发明、实用新型、外观)、软件著作权、学术专著、教材、指导学生获奖、国家级项目、省部级项目的管理,添加、删除、修改、查询、统计。
实现科研成果认定、科研绩效的统计及考核功能。
- 教师登录后,可以查看自己的绩效统计,统计形式一:教师会有根据所做科研的所得积分。统计形式二:采用统计图表的形式显示。
数据库的分析
根据以上系统功能的分析,需要建立以下的数据库表(只是分析,并不真正的去建表,通过CodeFirst开发方式,通过Model映射数据库的表,就像JAVA中采用Hibernate,将bean通过配置文件映射成数据库,而.NET的EF则是约定优先的,先是服从约定,无需通过配置文件)
- 管理员表Admin(管理员用户) 保存了管理员的信息
- 新闻表News 公告,本表保存了管理员发布重要通告的所有信息,即首页新闻展示。
旗帜Banner表,就是主页上现实的旗帜新闻,可以不用单独设立一张表
以上3张表都是独立的,不和其他的表产生主外键关系用户表User(教师用户)保存了老师的所有信息。
- 论文表Paper:本表储存了论文的所有信息,外键为用户ID
- 项目表Project,专利表Patent,软件著作权表CopyRight,专著表TextBook,指导学生获奖表TeachingPrize与论文表类似。
以上的表之间存在主外键关系。我们要清楚数据库的表的主外键之间的关系,要在后来写Model中体现出这种主外键的关系。这里务必要弄明白。
项目创建
- 接下来我们要先学会建立一个.NET MVC的项目
- 文件(File)->新建(NEW)->项目(Project)
选择.NET FrameWork 4.0下的MVC4项目
选择一个空的MVC项目,View层解析的引擎为Razor。你会发现这样的View文件后缀为cshtml,可以理解为嵌套c#代码的html页面,就像java的el表达式,JSTL标签,Struts标签,与Html标签无缝嵌套。
上图就是建成的项目的目录结构
- App_Data放置的是与数据库文件
- App_Start放置的项目启动时的默认信息
- Web.Config:类似于java中的web.xml配置项目的信息
小结
通过以上几步,我们简单介绍了教学科研管理系统的系统功能以及数据库表的逻辑关系以及字段,这样分析好是为了方便我们之后讲解CodeFirst的编程方式。还顺带介绍了怎么创建一个MVC4的空项目。我5天前我刚接触的时候 ,可是连一个空的MVC项目都不会建的。