广告
返回顶部
首页 > 资讯 > 数据库 > EF基础篇-DB First
  • 264
分享到

EF基础篇-DB First

摘要

EDM entity data model  实体数据模型   Conceptual models 概念模型 Mappings         连接 Storage models    存储模型   ORM object relationa


	EF基础篇-DB First
[数据库教程]

EDM entity data model  实体数据模型

 

Conceptual models 概念模型

Mappings         连接

Storage models    存储模型

 

ORM object relational mapping 对象关系映射

EF entity framework 是基于ADO.netORM框架,将数据库中的表映射为实体类,建立联系,通过上下文进行数据操作

 

DB first

1 新建一个控制台程序

2 右键点击添加,新建项,如图,选择ADO.NET 实体数据模型

技术图片

3 模型配置

选择来自数据库EF设计器

技术图片

数据库连接配置和测试

技术图片

选择所需的表、视图,点击完成

技术图片

文件分析

如图edmx文件是实体属性设置界面,其中的导航属性是外键

技术图片

属性操作 移除 新增 从数据库个性模型

技术图片

Context文件 存在于Context.tt下

技术图片

构造函数中的name对应于App.Config中数据库连接

DbSet 实体对象的集合,可用于增删改查

 

tt文件下存放实体类

技术图片

 

CRUD实际操作

技术图片
 1            //CRUD
 2             using (var ASEntity = new AccountSystemEntities())
 3             {
 4                 //新增数据
 5                 User u = new User();
 6                 u.Email = "abc@163.com";
 7                 u.UserID = ASEntity.User.Select(p => p.UserID).ToList().Max() == 0 ? 1 : ASEntity.User.Select(p => p.UserID).ToList().Max() + 1;
 8                 u.SerialNumber = "00000";
 9                 u.UserName = "Test";
10                 u.PassWord = "123";
11                 u.RoleID = 1;
12                 ASEntity.User.Add(u);
13                 ASEntity.SaveChanges();
14 
15                 //查询和修改
16                 var uu = ASEntity.User.Where(p => p.UserName == "Test").FirstOrDefault();
17                 uu.Password = "1234";
18                 ASEntity.SaveChanges();
19 
20                 //删除方式一 先查再删除
21                 ASEntity.User.Remove(uu);
22                 ASEntity.SaveChanges();
23 
24                 //删除方式二 先定义再标记状态删除
25                 User ud = new User() { UserID=36 };
26                 ASEntity.Entry(ud).State= System.Data.Entity.EntityState.Deleted;
27                 ASEntity.SaveChanges();
28             }        
View Code

注意在删除时用EntityState 删除对象必须包含主键,不然会报以下错误

技术图片

通过以上实例:

1 DB First 适用于数据库已存在,主键外键等比较完整的情况

2 DB First操作简便,数据库变更可及时更新模型

3 DB First 无需面对数据库,用LINQ即可完成对数据的操作

 

EF基础篇-DB First

原文地址:https://www.cnblogs.com/arvinzd/p/14312837.html

您可能感兴趣的文档:

--结束END--

本文标题: EF基础篇-DB First

本文链接: https://www.lsjlt.com/news/8070.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • EF基础篇-DB First
    EDM entity data model  实体数据模型   Conceptual models 概念模型 Mappings         连接 Storage models    存储模型   Orm object relationa...
    99+
    2021-05-31
    EF基础篇-DB First 数据库入门 数据库基础教程 数据库 mysql
  • Db基础命令1
    1.创建表 2.查询,删除,更新,插入数据操作 查询: 删除:drop table ruozedata 更新: 插入数据: 3.设置约束 在里面新建约束即可,代码可以在里...
    99+
    2022-10-18
  • EF Core基础入门教程
    EF Core 是一个ORM(对象关系映射),它使 .NET 开发人员可以使用 .NET对象操作数据库,避免了像ADO.NET访问数据库的代码,开发者只需要编写对象即可。 EF Co...
    99+
    2022-11-13
  • redis基础篇
    redis有五种数据类型,分别是string、hash、list、set、zset 一、string类型:redis 127.0.0.1:6379>set name doo//设置一个键值对...
    99+
    2022-10-18
  • Python基础篇-Python基础语法
    为什么学习pythonhttp://www.apelearn.com/bbs/thread-7739-1-1.html Python的安装 getconf LONG_BIT     查看系统版本多少位 rpm -q python uname...
    99+
    2023-01-31
    基础 语法 Python
  • 131.【MySQL_基础篇】
    MySQL_基础篇 (一)、MySQL 介绍1.MySQL三大阶段(1).基础篇(2).进阶篇(3).运维篇 2.MySQL 概念3.数据模型(1).关系型数据库(RDBMS) ...
    99+
    2023-10-06
    mysql adb android
  • Linux基础篇二
    特殊的权限SUID: 2 用户执行此二进制程序时,在执行过程中用户会暂时具有所有者权限          *仅对于二进制程序有效    ...
    99+
    2022-10-18
  • MySQL基础篇(一)
    本文主要内容为MySQL的基础语句以及正则表达式等内容。 本文操作的数据库内容存在个人github:https://github.com/YuanGao-1/blog_demo.git init_schema.sql为建表脚本 init...
    99+
    2018-12-14
    MySQL基础篇(一)
  • python 基础篇(一)
    默认的python的文件为:文件名.py #!/usr/bin/env python   # coding=utf-8     对中文的支持(切记:等号两边没有空格)执行python 文件:[root@localhost Desktop]#...
    99+
    2023-01-31
    基础 python
  • Linux基础篇之五基础命令 ---- 3
    在linux中,我们经常需要查找某些文件,以及文件所在目录等。那么我们需要用到一些基本的文件查找类命令。文件查找命令主要有以下几个:·which    查看命令或可执...
    99+
    2022-10-18
  • python之基础篇(二)
    防伪码:忘情公子著一、面向过程与面向对象  面向过程:    以指令为中心,由指令去处理数据    只要考虑如何组织代码去解决问题  面向对象:    以数据为中心,所有的处理代码都围绕数据展开    要考虑如何设计数据结构组织数据,并且提...
    99+
    2023-01-31
    基础 python
  • Tornado基础学习篇
    1.1 Tornado是什么? Tornado是使用Python编写的一个强大的、可扩展的Web服务器。它在处理严峻的网络流量时表现得足够强健,但却在创建和编写时有着足够的轻量级,并能够被用在大量的应用和工具中。 我们现在所知道的Tor...
    99+
    2023-01-30
    基础 Tornado
  • H3C基础配置篇
            最近,入手一台H3CS3600V2-SI鼓捣了大半个月终于是按照BOSS的要求配好.大部分时间都花在查官方文档和售后Email上,效率极低.如果基础知识,扎实感觉有一个星期完全足够了!下面就来总结一下:组网需求及内网信息收集...
    99+
    2023-01-31
    基础 H3C
  • python之基础篇(一)
    防伪码:忘情公子著一、python介绍  python是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum于1989年发明,第一个公开发行版发行于1991年。  python语法简洁明晰,特色之一是强制用空白符...
    99+
    2023-01-31
    基础 python
  • python之路-基础篇
    python基础第一章1、python介绍python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。  ...
    99+
    2023-01-31
    之路 基础 python
  • python之基础篇(四)
    防伪码:忘情公子著本篇我们来说说python的内置对象类型及其运算。  python有许多的内置类型,我们为什么要使用内置类型呢?python编程时是尽量去使用自定义类型还是尽可能多的使用内置类型呢?  内置类型对python本身来讲它的理...
    99+
    2023-01-31
    基础 python
  • python之基础篇(三)
    防伪码:忘情公子著python编程基础及编程风格:  语句和语法    注释:      #:可以从一行的任何地方开始    续行:      \:只能在行尾      ''':闭合操作符,单一语句跨多行。实现多行注释、内置文档等功能   ...
    99+
    2023-01-31
    基础 python
  • linux 培训-基础篇
    一.systemctl1.服务器启动过程redhat 7以前启动方式,init: 按顺序启动 1 2 3 4。  启动慢redhat 7 systemd:并行化启动 按依赖关系启动。 1 2 3 4(network) 5 6 7 ...
    99+
    2023-06-06
  • java——《面试题——基础篇》
    全文章节 Java——《面试题——基础篇》 Java——《面试题——JVM篇》 Java——《面试题——多线程&并发篇》 Java——《面试题——Spring篇》 Java——《面试题——SpringBoot篇》 Java—...
    99+
    2023-10-21
    java 面试题
  • python之路-基础篇3
    作业:1、每周写一篇博客2、编写登录接口     输入用户名密码     认证成功后显示欢迎信息     输错三次后锁定3、多级菜单     三级菜单     可依次选择进入各子菜单     所需新知识点:列表、字典data = { "水...
    99+
    2023-01-31
    之路 基础 python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作