EntityFramework基础(转载)

EntityFramework基础

好久没有学习新东西了,最近研究了下EntityFramework,将基础代码贴出来,

Entity Framework 利用了抽象化数据结构的方式,将每个数据库对象都转换成应用程序对象 (entity),而数据字段都转换为属性 (property),关系则转换为结合属性 (association),让数据库的 E/R 模型完全的转成对象模型,如此让程序设计师能用最熟悉的编程语言来调用访问。而在抽象化的结构之下,则是高度集成与对应结构的概念层、对应层和储存层,以 及支持 Entity Framework 的数据提供者 (provider),让数据访问的工作得以顺利与完整的进行。

(1) 概念层:负责向上的对象与属性显露与访问。

(2) 对应层:将上方的概念层和底下的储存层的数据结构对应在一起。

(3) 储存层:依不同数据库与数据结构,而显露出实体的数据结构体,和 Provider 一起,负责实际对数据库的访问和 SQL 的产生。

预备知识:Linq、C#匿名类和拉姆达表达式、

废话不多说,直接上代码

一添加:首先创建试题对象,将要添加的数据复制到对象属性上,然后添加到数据库

 

二查询(1)单表查询:

查询出QuName字段包含”我是新增“的数据

 

    关联查询(2):关联查询要求数据库结构必须存在主外键关系,当生成试题类的时候EF会根据数据库结构生成出每张表的试题类,并且包含当前表的外键的映射关系

  连接查询查询出CommonUser表和CommonUnit表 关联条件unitId=unitId

 

三修改(1)官方推荐方法:首先查询出要修改的数据, 然后将修改后的数据重新复制个对象属性,然后保存到数据库

 

修改(2)直接修改方法:
  

 

四删除:

 

五 批处理(1):可以将所有的操作(增加、修改、删除)添加到集合中,只需SaveChange()一次,即可秩序全部操作

 

批处理(2)循环添加:

 

附:底层封装

 

时间: 2024-08-04 19:28:45

EntityFramework基础(转载)的相关文章

高并发编程必备基础 -- 转载自 并发编程网

文章转载自 并发编程网  本文链接地址:高并发编程必备基础 一. 前言 借用Java并发编程实践中的话"编写正确的程序并不容易,而编写正常的并发程序就更难了",相比于顺序执行的情况,多线程的线程安全问题是微妙而且出乎意料的,因为在没有进行适当同步的情况下多线程中各个操作的顺序是不可预期的,本文算是对多线程情况下同步策略的一个简单介绍. 二. 什么是线程安全问题 线程安全问题是指当多个线程同时读写一个状态变量,并且没有任何同步措施时候,导致脏数据或者其他不可预见的结果的问题.Java中首

EntityFramework 基础提供程序在 Open 上失败

最近项目开始上线,所以抽时间学习了一下EF.虽然项目中一直在用,但是因为一些原因,一直是知其然不知其所以然,紧紧只限于会用而已.这两天自己搭建了一个MVC的EF框架,虽然也有参考网上各种资料,但是依然不是很顺路. 所以就遇上了题目的问题,在写入数据库的时候报错: 基础提供程序在 Open 上失败 !SaveChanges  的时候出错! users user = new users(); TryUpdateModel(user); //将实体以基础数据添加到集的基础上下级 db.users.Ad

EntityFramework基础框架搭建

近期学习了关于EntityFramework的基础概念知识,今天开始进行Sample设计及测试,从而深入了解关于EF的使用及知识总结. 首先进行Sample的环境配置,分别如下图所示:                 以上两图即此TestSample所搭建的基础环境,右图为数据实体类部分,左图为数据属性约定.数据初始化及配置文件.此Sample主要为搭建环境而非系统内置方法测试,因此实体类的定义非常简单. 1 public class Role 2 { 3 public int ID { get

JavaBean基础转载

JavaWeb:JavaBean基础 JavaBean基础 JavaBean简介: 1.JavaBean是一种可以重复使用的类,可以没有用户界面,主要负责业务数据或者处理事物(数据运算.操作数据库) 2.与JSP配合,可以简化JSP代码.特性: 一个标准的JavaBean有以下特性: a.JavaBean是一个实例: public class CounterBean{ private int count=0; public CounterBean(){} public int getCount(

数组结构基础——转载声明

学习数据结构是一个很漫长的过程,我在学习过程中发现了一个不错的博客,博主不断的学习,充实自己,我很佩服,我读了他的博客,深有体会,目前,该博主已经进入阿里巴巴实习.博客地址:http://blog.csdn.net/zjf280441589 他写的博客很详细,适合学习,比我写得好多了,最近也的确没有太多时间写博客,所以将他的博客转载过来,继续我们的数据结构与其他课程的学习. 向朱吉芳同学致敬! 版权声明:本文为博主原创文章,未经博主允许不得转载.

MySQL数据库基础(转载)

MySQL数据库基础 安装mysql [[email protected] ~]# yum install mysql mysql-server mysql-devel 2.启动mysql,并设置开机自启动 [[email protected] ~]# service mysqld start/stop/restart/status        #启动/关闭/重启/状态 chkconfig mysqld on/off [[email protected] ~]# chkconfig --lis

深入理解Java内存模型(1 ) -- 基础(转载)

原文地址:http://www.infoq.com/cn/articles/java-memory-model-1 并发编程模型的分类 在并发编程中,我们需要处理两个关键问题:线程之间如何通信及线程之间如何同步(这里的线程是指并发执行的活动实体).通信是指线程之间以何种机制来交换信息.在命令式编程中,线程之间的通信机制有两种:共享内存和消息传递. 在共享内存的并发模型里,线程之间共享程序的公共状态,线程之间通过写-读内存中的公共状态来隐式进行通信.在消息传递的并发模型里,线程之间没有公共状态,线

天线罩基础[转载]

May 2008 A Fundamental and Technical Review of Radomes By Lance Griffiths, Ph.D., Radome Design Engineer, MFG Galileo Composites The basic function of a radome is to form a protective cover between an antenna and the environment with minimal impact t

【前端】html基础——转载

原文章地址:http://www.cnblogs.com/yuanchenqi/articles/6835654.html 一.html结构 <!DOCTYPE html> 告诉浏览器使用什么样的html或者xhtml来解析html文档 <html></html>是文档的开始标记和结束标记.此元素告诉浏览器其自身是一个 HTML 文档,在它们之间是文档的头部<head>和主体<body>. <head></head>元素出