此软件使用的数据库连接方式code first 由EF框架产生数据库。
code first需要对模型类设计和实现。模型类是现实实体在计算机中的表示。它贯穿于整个架构,
负担着在各层次及模块间传递数据的职责。
模型类和数据库中的表(这里指实体表,不包括表示多对多对应的关系表)是一一对应的
在此软件中,模型类和表是一一对应的,并且模型类中的属性和表中的字段也是对应的。
在看模型类的代码前,先看一下系统的工程结构。
如上图所示,在初始阶段,整个系统包括3个主要的工程文件夹,它们的职责是这样的:
controllers:添加控制器,处理用户请求。
views:添加视图,为用户呈现视图。
Models:添加实体类,和其他类。
这只是一个初期架构,主要是将整个系统搭一个框架,在后续开发中,将会有其他工程被陆陆续续添加进来
模型类将放在Models工程下,这里包括两个文件:GzScore.cs,Players.cs,分别是观众计分模型类,和运动员计分模型类。
具体代码如下:
GzScore.cs
public class GZScore { public int ID { get; set; } [DisplayName("队伍名称")] public string teamName { get; set; } [DisplayName("队员号码")] public string num { get; set; } [DisplayName("发球得分")] public int faqiu{ get; set; } [DisplayName("扣球得分")] public int kouqiu { get; set; } [DisplayName("拦网得分")] public int langwang { get; set; } [DisplayName("助攻得分")] public int zhugong{ get; set; } [DisplayName("队伍总分")] public int totalscore { get; set; } } public class gDBContext : DbContext { public DbSetStudents { get; set; } }
Players.cs
public class Players { public int ID { get; set; } [DisplayName("发球得分")] public int faqiu { get; set; } [DisplayName("扣球得分")] public int kouqiu { get; set; } [DisplayName("拦网得分")] public int langwang { get; set; } [DisplayName("助攻得分")] public int zhugong { get; set; } [DisplayName("个人优点")] public string youdian { get; set; } [DisplayName("失误")] public string shiwu { get; set; } [DisplayName("总结")] public string zongjie { get; set; } } public class pDBContext : DbContext { public DbSetplayer { get; set; } }
模型类的代码很简单,仅仅是负责实体的表示和数据的传递,不包含任何逻辑性内容,且用来生成数据库中的表。
通过ef框架生成的表和库会和模型类中的字段一一对应,我们会在后续几篇博客讲述。