前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >EF基础知识小记三(设计器=>数据库)

EF基础知识小记三(设计器=>数据库)

作者头像
郑小超.
发布2018-01-26 17:07:08
9750
发布2018-01-26 17:07:08
举报
文章被收录于专栏:GreenLeavesGreenLeaves

本文主要介绍通过EF的设计器来同步数据库和对应的实体类.并使用生成的实体上下文,来进行简单的增删查该操作

1、通过EF设计器创建一个简单模型

(1)、右键目标项目添加新建项

(2)、选择ADO.Net实体数据模型,并将实体模型命名为Recipe1,点击下一步

(3)、选择空设计器,并点击完成

(4)、edmx空模型创建完毕,下一步右键设计界面创建实体

(5)、添加一个Person实体,实体属性如下图,并点击确定

图中创建键属性,实体会自动添加一个Id属性,并将该属性设为主键(数据库设计三范式之一,每个表必须有一个主键,且表中的每一列都和主键相关)

(6)、实体创建成功,如下图

(7)、给Person实体添加属性(包括导航属性和标量属性等),如下图

Name属性的详细设计界面如下图,基本都在vs的右下角

(8)、模型设计完毕,因为是第一次同步数据库,需要初始化一些信息(当然不初始化,模型设计器会采用默认值),右键右键计设器窗口,选择properties(属性)。更改数据库架构名称(Database Schema name)为Chapter2,更改实体容器名称(Entity Container Name)为EF6RecipesContext,如下图所示:

(9)、右键设计器,并更具模型生成数据库,如下图:

(10)、选择对应的数据库,并选择对应的实体框架,最终结果如下图:

(11)、点击完成,生成的Sql文件就会追加到你的项目中

(12)、右击设计器,执行该脚本,中途会让你连接到数据库,执行成功

表添加成功.

 (2)、通过DbContext进行简单的增删查该操作

(1)、DbContext上下文对象介绍

数据库上下文对象,对于数据库的操作,基本都看它,使用完它,注意释放!!!!!!

(2)、使用DbContext上下文对象进行简单的增删查该

代码语言:javascript
复制
        using (var context = new EF6RecipesContext())
            {
                var person = new Person
                {
                    Name = "张三"
                };
                context.People.Add(person);
                var person1 = new Person
                {
                    Name = "李四"
                };
                context.People.Add(person1);
                var person2 = new Person
                {
                    Name = "王五"
                };
                context.People.Add(person2);
                context.SaveChanges();
            }
            using (var context = new EF6RecipesContext())
            {
                var perple = context.People;
                foreach (var person in perple)
                {
                    Console.WriteLine("编号:{0} 姓名:{1}",person.Id,person.Name);
                }
            }
            Console.ReadKey();
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-10-10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档