Entity Framework 的简单介绍与实例
1、下载与引用
a) 首先需要下载一个oracle clinent 12c 发行版(我这边下载的是发行版)并进行安装,下载内容如下图

B) 创建一个项目,通过Nuget引用 添加ODP.NET 如图

2、创建数据库
对于oracle是数据库的创建,在这里就不介绍了。略
3、对创建好的数据库进行EF引用,并让其生成对应的model文件。
a) 首先添加一个ADO.NET实体数据模型,如图

B) 修改好相对应的类的名字(该类自动继承与DBContext类),点击添加,选择【来自数据库的code first】 如图

C) 配置一个oracle的数据库连接 (如在数据源选择没有oracle选项,则你的oracle client 12c 未安装成功) 如图

D)选择好相应的数据库连接后,点击下一步,会出现一个实体数据库模型向导,如图

在这个过程中,也许会碰到一个问题,会提示你如下错误:

在网上查找了相关的原因,也无法解决。 我的处理方式是运行了下该项目,再次重复以上添加ADO.NET实体模型的步骤,就不会出现此错误。具体原因我还无法解释。
E) 接下来是选择相对应的表,生成对应的实体类与映射。
在此期间,我会出现一个问题,如果我未选择全部表,点击完成时,并未生成相对应的实体类与映射,如果我选择全部表,就可以生成。 如图
(红色的为实体类,蓝色的为映射关系)
Model1.cs类如下

实体类 xiaoheis.cs 如下

4、增删改查
A)首先我们先查询下 TESTs这张表总共有几条数据 代码如下

运行结果:(由于我之前在表中就有数据,所以显示结果为条数,如果没有添加过的结果应该是0)

B) 对于表TESTs 进行添加数据,然后再进行查询,是否条数有变化,代码如下

测试结果如图:

可以看到结果,明显是加了一条数据。说明添加是成功的。其他的一些方法,就不做说明了。
EF学习与介绍
1、下载与引用
a) 首先需要下载一个oracle clinent 12c 发行版(我这边下载的是发行版)并进行安装,下载内容如下图

B) 创建一个项目,通过Nuget引用 添加ODP.NET 如图

2、创建数据库
对于oracle是数据库的创建,在这里就不介绍了。略
3、对创建好的数据库进行EF引用,并让其生成对应的model文件。
a) 首先添加一个ADO.NET实体数据模型,如图

B) 修改好相对应的类的名字(该类自动继承与DBContext类),点击添加,选择【来自数据库的code first】 如图

C) 配置一个oracle的数据库连接 (如在数据源选择没有oracle选项,则你的oracle client 12c 未安装成功) 如图

D)选择好相应的数据库连接后,点击下一步,会出现一个实体数据库模型向导,如图

在这个过程中,也许会碰到一个问题,会提示你如下错误:

在网上查找了相关的原因,也无法解决。 我的处理方式是运行了下该项目,再次重复以上添加ADO.NET实体模型的步骤,就不会出现此错误。具体原因我还无法解释。
E) 接下来是选择相对应的表,生成对应的实体类与映射。
在此期间,我会出现一个问题,如果我未选择全部表,点击完成时,并未生成相对应的实体类与映射,如果我选择全部表,就可以生成。 如图
  (红色的为实体类,蓝色的为映射关系)
Model1.cs类如下

实体类 xiaoheis.cs 如下

4、增删改查
A)首先我们先查询下 TESTs这张表总共有几条数据 代码如下

运行结果:(由于我之前在表中就有数据,所以显示结果为条数,如果没有添加过的结果应该是0)

B) 对于表TESTs 进行添加数据,然后再进行查询,是否条数有变化,代码如下

测试结果如图:

可以看到结果,明显是加了一条数据。说明添加是成功的。其他的一些方法,就不做说明了。
| 
 注释类型名称  | 
 注释作用  | 
 备注  | 
| 
 [Key]  | 
 主键  | 
|
| 
 [Required]  | 
 必须键  | 
 Required 特性将使被映射的属性不可为空来影响生成的数据库  | 
| 
 [MaxLength]  | 
 最大长度  | 
|
| 
 [MinLength]  | 
 最小长度  | 
|
| 
 [NotMapped]  | 
 不映射到数据库的属性  | 
|
| 
 [ComplexType]  | 
 在子表model中设定  | 
|
| 
 [ConcurrencyCheck]  | 
 标记要在用户编辑或删除实体时用于在数据库中进行并发检查的一个或多个属性  | 
|
| 
 [TimeStamp]  | 
||
| 
 [Table("表名",Schema="用户名")]  | 
 映射指定表名与用户名  | 
|
| 
 [Column("列名",TypeName = "字段类型")]  | 
 用来指定被映射列的特性  | 
|
| 
 [ForeignKey]  | 
 外键  | 
|
| 
 [InverseProperty]  | 
||
| 
 [DatabaseGenerated]  | 
Entity Framework 的简单介绍与实例的更多相关文章
- Linux守护进程简单介绍和实例具体解释
		
Linux守护进程简单介绍和实例具体解释 简单介绍 守护进程(Daemon)是执行在后台的一种特殊进程.它独立于控制终端而且周期性地执行某种任务或等待处理某些发生的事件.守护进程是一种非常实用的进程. ...
 - Tstrings类简单介绍及实例
		
用TStrings保存文件;var S: TStrings;begin S := TStringList.Create(); { ... } S.SaveToFile('config.txt' ...
 - N-Tier Entity Framework开源项目介绍
		
N-Tier Entity Framework是一个基于微软Entity Framework的N层.NET解决方案. 并且与以下这此技术点无缝集成了: § WCF RIA Ser ...
 - Entity Framework 6.x介绍
		
一.简介 Entity Framework是一个ORM框架,可以在SQL Server,Oracle,DB2,MySQL等数据库上使用.其发展到现在已经到6.x版本了,同时该版本也是被官方所推荐使用. ...
 - Dubbo简单介绍及实例
		
1.概念 Dubbo是一个分布式服务框架,以及阿里巴巴内部的SOA服务化治理方案的核心框架.其功能主要包含:高性能NIO通讯及多协议集成.服务动态寻址与路由.软负载均衡与容错,依赖分析与降级等. 说通 ...
 - Solr之NamedList 简单介绍与实例解析
		
大家都知道,Solr是一个基于Lucene高可配置的搜索服务器,大部分参数值以及相关优化等等都可以在solrconfig.xml中配置,那么就需要一个能够很快的进行解析和读取配置文件内容的数据结构,为 ...
 - 什么是EF, 和 Entity Framework Demo简单构建一个良好的发展环境
		
 Entity Framwork(实体框架.缩写EF)这是ORM(Object Relational Mapping.对象映射关系)一个解决方案. EF的表映射为实体.并封装了操作方法.方便开发者 ...
 - (八十七)AutoLayout的简单介绍与实例
		
AutoLayout是继AutoResizing之后的一种自己主动布局方法.攻克了AutoResizing无法处理控件间相互关系的问题. AutoLayout在storyboard中通过底部工具条设置 ...
 - Entity Framework 中的in操作实例
		
var listimportDataEOIResoults = importDataEOIResoults.Select(i => i.ProductSelectionId).ToList(); ...
 
随机推荐
- 切换到ZSH以后遇到的坑
			
了解到ZSH的强大以后打算将自己目前使用的bash切换到ZSH.具体ZSH比bash强在那里就不多少了,网上的文章一搜一大把.个人主要是被ZSH强大的自动补全吸引过来的.虽然bash装了bash-co ...
 - 我心中的核心组件(可插拔的AOP)~第四回  异常拦截器
			
回到目录 之前说过有关拦截器的文章,第二回 缓存拦截器,事实上,在那讲里说的最多是AOP和缓存组件,对于拦截的概念并没有详细的说明,这一讲,不说AOP,主要说一下拦截器,拦截器Interceptio ...
 - Node.js入门:模块机制
			
CommonJS规范 早在Netscape诞生不久后,JavaScript就一直在探索本地编程的路,Rhino是其代表产物.无奈那时服务端JavaScript走的路均是参考众多服务器端语言来 ...
 - Atitit vod click event design flow  视频点播系统点击事件文档
			
Atitit vod click event design flow 视频点播系统点击事件文档 重构规划1 Click cate1 Click mov4 重构规划 事件注册,与事件分发管理器分开 ...
 - 转载:Spring AOP (下)
			
昨天记录了Spring AOP学习的一部分(http://www.cnblogs.com/yanbincn/archive/2012/08/13/2635413.html),本来是想一口气梳理完的.但 ...
 - Change Git Default Editor in Windows
			
On 32 bit Win OS: git config --global core.editor "'C:/Program Files/Notepad++/notepad++.exe' - ...
 - Linux快速入门03-系统管理
			
这部分将涉及常用的各类linux命令和一些系统高级管理特性,尤其是shell script的创建,这部分在系统自动化运维时会很有作用. Linux系列文章 快速入门系列--Linux--01基础概念 ...
 - 利用JSDOC快速生成注释文档,非常棒。
			
有时往往我们需要建一个文档来记录js中的一些代码注释,比如一些公共的函数,又或者一些类,在团队合作中,文档接口也是必不可少的,传统的方式多少有些不便,这里介绍一个工具,它叫JSDOC,它可以用来将注释 ...
 - 二分查找java代码
			
public int find(long searchKey){ int i; int begin = 0; int end = nElems - 1; while(true){ i = (begin ...
 - 深入理解PHP内核(五)函数的内部结构
			
php的函数包括用户定义的函数.内部函数(print_r count...).匿名函数.变量函数($func = 'print_r'; $func(array('a','b'));) PHP内核源码中 ...