Entityframework Code First 系列之项目搭建
Entityframework(以下簡稱EF)是微軟推出的一個ORM(Object Relational Mapping)框架。
優缺點
優點:
易上手,語法簡單,查詢容易
更新快,不斷補足
缺點:
性能問題,查詢速度偏慢,不過隨著EF6的推出,查詢速度進行了很多優化
Code First
EF提供了多種映射模式,比如說Database First、Model First、Code 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 CodeEmployee:
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 CodeMLSContext:
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
轉載于:https://www.cnblogs.com/Kingdizzy/p/5645885.html
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的Entityframework Code First 系列之项目搭建的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [Git] 还原Git上commit,但
- 下一篇: (一)MVC5干货篇,目录和路由