ORM思想 :面向對象模型和關系數據庫模型的轉換 (表實體與表之間的轉化)
1: 把表實體的變化轉化到數據庫里面去
2: 把表的數據轉化成實體
ORM框架的優勢:
1; 命令化編程,可以提高代碼的生命力
2: 對於數據庫方法操作都是強類型,不區別數據庫的版本 跨數據庫 只需要修改連接字符串的代碼即可。
EF(Entity Framework):是一種C#開發架構(是C#實現ORM思想的框架)
EF 實現Web頁面 一個操作只實例化一個實體
HttpContext(包含CallContext,則能實現只實例化一個)
CallContext(線程只能實例化一個)
EF實現增刪改查的基本步驟
1 聲明一個上下文
例如:StudentManagerEntities dbContext = new StudentManagerEntities();
2 聲明一個實體
例如: Student ss = new Student();
ss.Birthday = "dd";
ss.BirthPlace = "dd";
ss.ClassID = Convert.ToInt32(1);
ss.Email = "sss";
ss.Gender = "nan";
ss.Photo = "images/StudentPhoto/1.jpg";
ss.StudentID = Convert.ToInt32(18);
ss.StudentName = "humo";
ss.TelePhone = "10086";
ss.StudentNumber = "1234";
3 告訴上下文對實體的操作 如進行修改 編輯 刪除等操作 注意制定主鍵
例如:添加操作 :dbContext.Student.Add(ss);
修改操作 :dbContext.Entry<Student>(ss).State=System.Data.EntityState.Modified;
查詢操作 :var temp = from u in dbContext.Student
where u.StudentID > 1
select u;
foreach (var item in temp)
{
Console.WriteLine(ss.StudentID+""+ss.StudentName+ss.StudentNumber+ss.TelePhone);
}
4 把實例的變化保存到數據庫中
例如:dbContext.SaveChanges();
Console.ReadKey();
Console.WriteLine("保存到數據庫");
