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("保存到数据库");