1. 程式人生 > >MVC項目實踐(四)——EDM實現

MVC項目實踐(四)——EDM實現

開發 ron key com sum lldb 實體類 資源管理器 space

實體數據模型 (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實現