Entityframework Code First 系列之項目搭建


Entityframework(以下簡稱EF)是微軟推出的一個ORM(Object Relational Mapping)框架。

優缺點

優點:

易上手,語法簡單,查詢容易

更新快,不斷補足

缺點:

性能問題,查詢速度偏慢,不過隨着EF6的推出,查詢速度進行了很多優化

Code First

EF提供了多種映射模式,比如說Database FirstModel FirstCode First。由於本系列主要使用Code First,因此其他兩種不做詳細描述。有興趣的可以去官網查看。 

新建項目

 首先新建一個控制台應用程序:MLS.CodeFirst,如下圖:

然后我們需要安裝EF程序包,輸入命令 Install-Package EntityFramework,如下圖:

這時我們可以定義實體類了,我們模擬公司、員工,定義兩個實體類:

Company:

 1 public class Company
 2     {
 3         public long Id { get; set; }
 4 
 5         [DisplayName("名稱"),Required,StringLength(50)]
 6         public string Name { get; set; }
 7 
 8         [DisplayName("描述")]
 9         public string Descript { get; set; }
10     }
View Code

Employee:

 1 public class Employee
 2     {
 3         public long Id { get; set; }
 4 
 5         public long CompanyId { get; set; }
 6 
 7         [DisplayName("名稱"),Required,StringLength(50)]
 8         public string Name { get; set; }
 9 
10         public Gender Gender { get; set; }
11         public int Height { get; set; }
12         public decimal Weight { get; set; }
13     }
View Code

MLSContext:

 1 public class MLSContext:DbContext
 2     {
 3         public MLSContext() : base("name=MLSContext") { }
 4 
 5         public virtual DbSet<Company> Company { get; set; }
 6 
 7         public virtual DbSet<Employee> Employee { get; set; }
 8 
 9         protected override void OnModelCreating(DbModelBuilder modelBuilder)
10         {
11             base.OnModelCreating(modelBuilder);
12         }
13     }
View Code

注意這里指定的“name=MLSContext”,所以我們需要在App.Config里面添加數據庫鏈接:

1   <connectionStrings>
2     <add name="MLSContext" connectionString="data source=.\MSSQLSERVER2012;initial catalog=MLS.CodeFirst;user id=admin;password=admin;multipleactiveresultsets=True;application name=EntityFramework" providerName="System.Data.SqlClient" />
3   </connectionStrings>
View Code

這時候我們可以在Main函數里面坐下測試,是否可以增刪改查了。

 1 class Program
 2     {
 3         static void Main(string[] args)
 4         {
 5             using (var ctx = new MLSContext())
 6             {
 7                 var company = new Company()
 8                 {
 9                     Name = "北琳網絡有限公司",
10                     Descript = "It's a good Company."
11                 };
12                 ctx.Company.Add(company);
13                 ctx.SaveChanges();
14             }
15         }
16     }
View Code

運行程序,執行代碼后,我們可以看到數據庫里面已經有了對應的表:

並且數據已經插入:

到此項目已經搭建好,至於后面的維護會在接下來的文章講解。

 源碼地址:http://files.cnblogs.com/files/Kingdizzy/MLS.CodeFirst.rar


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM