个人学习笔记仅供分享,如有错误还请指出

demo结构:models类库和控制台程序

1、首先在model中建立,ADO.NET 实体数据模型---空模型,然后新建数据实体,并且生成数据库

2、控制台想买引用models

3、创建实体DbContext

DbContext称之为数据库上下文,其可以代表一个数据库的集合或者表示为数据库的一个会话,以便我们查询和保存数据。我们定义一个派生自 System.Data.Entity.DbContext 的上下文,并为模型中的每个类公开一个类型化 DbSet<TEntity>,通过该上下文可以使用linq进行查询工作。在使用DbContext之前,我们需要添加 EntityFramework NuGet 程序包。

      项目”–>“管理 NuGet 程序包…”
      注意:如果没有“管理 NuGet 程序包…”选项,则应安装 最新版本的Nuget

      选择“联机”选项卡

      输入EntityFramework 查找 选择“EntityFramework”程序包

      单击“安装”

安装完成后。我们在项目下新建一个文件夹DbClassContext,在该文件夹下添加一个类 并命名为EntityClassContext,添加 System.Data.Entity 引用,并将类继承自DbContext。

 1  public class EntityClassContext : DbContext
 2     {
 3         //name=数据库连接字符串的key
 4         public EntityClassContext()
 5             : base("name=ModelStudyContainer1")
 6         {
 7         }
 8         public DbSet<Models.Student> StudentContext { get; set; }
 9 
10         public DbSet<Models.School> SchoolContext { get; set; }
11     }

备注:name=数据库连接字符串的key。如果不设置,则提示错误

控制台数据执行

 1  using (var db = new EntityClassContext())
 2             {
 3                 for (int i = 0; i < 100; i++)
 4                 {
 5                     Models.Student stu = new Models.Student();
 6                     stu.Age = i;
 7                     stu.Name = "张三" + i;
 8                     stu.SchoolId = 1;
 9                     db.StudentContext.Add(stu);
10                 }
11                 db.SaveChanges();
12                 var query = (from s in db.StudentContext
13                              join q in db.SchoolContext on s.SchoolId equals q.ID
14                              select new
15                              {
16                                  s.SchoolId,
17                                  s.Name,
18                                  schoolName = q.Name,
19                                  q.RoomNo
20                              }).ToList();
21             }

 

posted on 2018-07-12 15:39  高兴happy  阅读(183)  评论(0编辑  收藏  举报