首页 > 代码库 > MVC项目实践(四)——EDM实现

MVC项目实践(四)——EDM实现

实体数据模型 (EDM) 是一个规范,用于定义由在 实体框架 基础上生成的应用程序使用的数据。使用 EDM 的应用程序在设计架构中定义应用程序域中的实体和关系。设计架构用于生成由应用程序代码使用的可编程类。在此模型中持久保留应用程序数据的存储结构由另一个架构(称为存储架构)表示。映射规范用于连接设计架构与存储架构。

再此次程序中,实体类和表是一一对应的,并且实体类中的属性和表中的字段也是对应的。

解决方案资源图:

技术分享

 

前三个均为实体类,第四个为DbContext接口继承。这只是一个初期架构,在后续开发中,将会有其他工程被陆陆续续添加进来。

具体代码如下:

Team.cs

 1 namespace VolleyballScoring.Models
 2 {
 3     public class Team
 4     {
 5         /// <summary>
 6         /// 实体类—队伍
 7         /// </summary>
 8         [Key]
 9         public int TId { get; set; }
10         public string Name { get; set; }
11     }
12 }

Game.cs

 1 namespace VolleyballScoring.Models
 2 {
 3     public class Game
 4     {
 5         /// <summary>
 6         /// 实体类—比赛
 7         /// </summary>
 8         [Key]
 9         public int GId { get; set; }
10         public int TIdA { get; set; }
11         public int TIdB { get; set; }
12         public int SscoA { get; set; }
13         public int SscoB { get; set; }
14     }
15 }

Section.cs

 1 namespace VolleyballScoring.Models
 2 {
 3     public class Section
 4     {
 5         /// <summary>
 6         /// 实体类—单节
 7         /// </summary>
 8         [Key]
 9         public int SId { get; set; }
10         public int GId { get; set; }
11         public int SNum { get; set; }
12         public int RouA { get; set; }
13         public int RouB { get; set; }
14         public string InfoA { get; set; }
15         public string InfoB { get; set; }
16     }
17 }

VolleyballDBContext.cs

1 namespace VolleyballScoring.Models
2 {
3     public class VolleyballDBContext : DbContext
4     {
5         public DbSet<Team> Teams { get; set; }
6         public DbSet<Game> Games { get; set; }
7         public DbSet<Section> Sections { get; set; }
8     }
9 }

大家可以看出,实体类的代码是非常简单的。我们在结合EF框架和MVC控制器可以很好的完成各种CDUS操作。

下面为服务器资源管理器:

技术分享

 

MVC项目实践(四)——EDM实现