EntityFramework 学习 一 DbContext】的更多相关文章

上一节中EDM自动生成SchoolEntities类,该类继承DbContext EntityFramework4.1之前的版本,EDM生成的类继承ObjectContext,使用ObjectContext稍微有点棘手,DbContext概念上与ObjectContext相似,它是ObjectContext的封装,DbContext是EF重要的组成部分,它是领域或实体类和数据库的桥梁 DbContext是主要的类负责数据和对象互相转化 EntitySet:  DbContext包含实体集合(DB…
using System; using System.Collections.Generic; public partial class Student { public Student() { this.Courses = new HashSet<Course>(); } public int StudentID { get; set; } public string StudentName { get; set; } public Nullable<int> StandardI…
using System; using System.Collections.Generic; public partial class Student { public Student() { this.Courses = new HashSet<Course>(); } public int StudentID { get; set; } public string StudentName { get; set; } public Nullable<int> StandardI…
即使延迟加载不能使用,也可以通过明确的调用来延迟加载相关实体 使用DBEntryEntity来完成 using (var context = new SchoolDBEntities()) { //Disable Lazy loading context.Configuration.LazyLoadingEnabled = false; var student = (from s in context.Students where s.StudentName == "Bill" sel…
使用主键属性 每个实体必须有主键 默认值的id属性值必须为0 在context2中,它不知道实体的状态, 只能通过实体的主键来判断实体的状态 如果主键为0,则是新的对象,不为0 就是修改 Standard disconnectedStandard = null; using (var context = new SchoolDBEntities()) { context.Configuration.ProxyCreationEnabled = false; disconnectedStandar…
//Create student in disconnected mode Student newStudent = new Student() { StudentName = "New Single Student" }; //Assign new standard to student entity newStudent.Standard = new Standard() { StandardName = "New Standard" }; //add new…
Student studentToDelete; . Get student from DB using (var ctx = new SchoolDBEntities()) { studentToDelete = ctx.Students.Where(s => s.StudentName == "Student1").FirstOrDefault<Student>(); } //Create new context for disconnected scenario…
前面我们已经创建EDM.DbContext和实体类,接下来我们学习不同的查询实体方法,转变为数据库的SQL查询 Entity Framework支持3种查询方式:1)LINQ to Entities ,2)Entity SQL ,3)Native SQL 1.LINQ to Entities Language-Integrated Query (LINQ)是一种强大的查询语言,在vs2008就引入.我们可以在c#或者vb中使用LINQ查询不同的数据源.LINQ-to-Entities运行在ent…
在微软官方关于ef7的介绍中强调,ef7将舍弃database first.model first,只保留code first的使用.这引起了很多人的担忧,担忧源自对code first的错误理解.因为很多人认为code first是区别于database first与model first的第三种方式,其实这是错误的理解.其实code first是替代前两种方式的解决方案.换句话来说,Code First 不是相对 Database First 和Model First的第三种方式,而是一种可…
最近想重新好好学习一下entityframework,于是在院子里找到了一篇不错的博客.下面把学习的过程记录下来,方便以后复习. 学习过程参考大神的博客:http://www.cnblogs.com/VolcanoCloud/p/4475119.html 开篇见得很好啊. 1.为什么要学习EF? 这个问题很简单,项目需要.这不像学校,没人强迫你学习! 我学习EF的原因主要是: a.EF是微软推荐的数据库访问技术: b.能提高我的开发效率,我不喜欢写那密密麻麻的SQL: c.比我写的SQL更合理,…