您的位置:首页 > 其它

排球记分员计分程序(四)————实体模型Model类的设计

2017-06-22 18:44 351 查看
实体类是现实实体在计算机中的表示。它贯穿于整个架构,负担着在各层次及模块间传递数据的职责。

大多情况下,实体类和数据库中的表(这里指实体表,不包括表示多对多对应的关系表)是一一对应的,但这并不是一个限制,在复杂的数据库设计中,有可能出现一个实体类对应多个表,或者交叉对应的情况。在本文的Demo中,实体类和表是一一对应的,并且实体类中的属性和表中的字段也是对应的。

一.先了解整个工程项目的基本架构:



如上图所示,在初始阶段,整个系统包括3个工程文件夹,它们的职责是这样的:

controllers:添加控制器,处理用户请求。

views:添加视图,为用户呈现视图。

Models:添加实体类。

二.实体类将放在Models工程文件下。



1.比赛队伍的实体模型类代码如下:

namespace 排球计分程序.Models
{
public class DuiWu
{
[Key]//主键
public int ID { get; set; }//队伍ID
public string Name { get; set; }//队伍名
}
}

2.比赛比分(包括局比分和总比分)的实体模型类的代码如下:

namespace 排球计分程序.Models
{
public class BiFen
{
[Key]//主键
public int ID { get; set; }//比分ID
public int JuFenA { get; set; }//A队局比分
public int JuFenB { get; set; }//B队局比分
public int ZongFenA { get; set; }//A队总比分
public int ZongFenB { get; set; }//B队总比分

}
}

3.VolleyballDBContext类的代码如下:

namespace 排球计分程序.Models
{
public class VolleyballDBContext : DbContext
{
public DbSet<DuiWu> DuiWus { get; set; }
public DbSet<BiFen> BiFens { get; set; }
}
}

VollayballDBContext类代表Entity Framework的排球数据库类,这个类负责在数据库中获取,存储,更新,处理Volleyball类的实例。VolleybllDBContext继承自Entity Framework的 DbContext基类。

可以看出,实体类的代码很简单,仅仅是负责实体的表示和数据的传递,不包含任何逻辑性内容。

三.创建连接字符串并使用SQL Server LocalDB

刚创建的VolleyballDBContext类用来连接数据库,并将Volleyball对象映射到数据库表记录。通过在应用程序的Web.config文件中添加数据库连接信息来指定连接到数据库。

1.打开应用程序根目录的Web.config文件。



2.在Web.config文件中的<connectionStrings>内添加下面的连接字符串。

<add name="VolleyballDBContext"
connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\Volleyball.mdf;Integrated Security=True"
providerName="System.Data.SqlClient"

/>

3.创建了一个名为Volleyball的数据库

在解决方案资源管理器中显示全部文件后可以看到App_Data文件下多了一个名为Volleyball.mdf的数据库文件



打开后可以看到:



由此,用来储存比赛信息的数据库已经创建成功了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: