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 的简单介绍与实例的更多相关文章

  1. Linux守护进程简单介绍和实例具体解释

    Linux守护进程简单介绍和实例具体解释 简单介绍 守护进程(Daemon)是执行在后台的一种特殊进程.它独立于控制终端而且周期性地执行某种任务或等待处理某些发生的事件.守护进程是一种非常实用的进程. ...

  2. Tstrings类简单介绍及实例

    用TStrings保存文件;var  S: TStrings;begin  S := TStringList.Create();  { ... }  S.SaveToFile('config.txt' ...

  3. N-Tier Entity Framework开源项目介绍

               N-Tier Entity Framework是一个基于微软Entity Framework的N层.NET解决方案. 并且与以下这此技术点无缝集成了: § WCF RIA Ser ...

  4. Entity Framework 6.x介绍

    一.简介 Entity Framework是一个ORM框架,可以在SQL Server,Oracle,DB2,MySQL等数据库上使用.其发展到现在已经到6.x版本了,同时该版本也是被官方所推荐使用. ...

  5. Dubbo简单介绍及实例

    1.概念 Dubbo是一个分布式服务框架,以及阿里巴巴内部的SOA服务化治理方案的核心框架.其功能主要包含:高性能NIO通讯及多协议集成.服务动态寻址与路由.软负载均衡与容错,依赖分析与降级等. 说通 ...

  6. Solr之NamedList 简单介绍与实例解析

    大家都知道,Solr是一个基于Lucene高可配置的搜索服务器,大部分参数值以及相关优化等等都可以在solrconfig.xml中配置,那么就需要一个能够很快的进行解析和读取配置文件内容的数据结构,为 ...

  7. 什么是EF, 和 Entity Framework Demo简单构建一个良好的发展环境

     Entity Framwork(实体框架.缩写EF)这是ORM(Object Relational Mapping.对象映射关系)一个解决方案. EF的表映射为实体.并封装了操作方法.方便开发者 ...

  8. (八十七)AutoLayout的简单介绍与实例

    AutoLayout是继AutoResizing之后的一种自己主动布局方法.攻克了AutoResizing无法处理控件间相互关系的问题. AutoLayout在storyboard中通过底部工具条设置 ...

  9. Entity Framework 中的in操作实例

    var listimportDataEOIResoults = importDataEOIResoults.Select(i => i.ProductSelectionId).ToList(); ...

随机推荐

  1. javascript之-深入事件机制

    作者:yuyuyu链接:https://zhuanlan.zhihu.com/p/24620643来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 1.1 事件绑定的方式 ...

  2. DNS正向解析与反向解析

    DNS:(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网, 而不去记住能够被机器直接读取的IP数串.通过主机名,最 ...

  3. golang开发缓存组件

    代码地址github:cache 花了一天时间看了下实验楼的cache组件,使用golang编写的,收获还是蛮多的,缓存组件的设计其实挺简单的,主要思路或者设计点如下: 全局struct对象:用来做缓 ...

  4. hadoop本地库与系统版本不一致引起的错误解决方法

    hadoop本地库与系统版本不一致引起的错误解决方法 部署hadoop的集群环境为 操作系统 centos 5.8 hadoop版本为cloudera   hadoop-0.20.2-cdh3u3 集 ...

  5. Python的枚举类型

    Python的 Python的没有我们有两种用法: 创建Enum的实例 创建Enum的subclass 创建Enum的实例 from enum import Enum, unique Month = ...

  6. [java] 找出字符串中出现最多的字符和出现的次数

    逛园子看到一童鞋做的华为上机题目,写来好长的代码,懒得看,感觉不可能这么难,于是动手敲了下. import java.util.Scanner; public class StringTest { / ...

  7. Java EE开发平台随手记1

    过完春节以来,一直在负责搭建公司的新Java EE开发平台,所谓新平台,其实并不是什么新技术,不过是将目前业界较为流行的框架整合在一起,做一些简单的封装和扩展,让开发人员更加易用. 和之前负责具体的项 ...

  8. Java 多态——与C++的比较

    学习了Java和C++之后,由于长期不使用C++,而java的基础知识掌握不牢,现在已经搞不清java多态了.现在先来谈谈java多态,稍后有时间再更新C++的多态,并进行比较~ 一. Java的多态 ...

  9. DOM对象模型四大基本接口

    本文向大家描述一下DOM对象模型的四个基本接口,在DOM对象模型接口规范中,有四个基本的接口:Document,Node,NodeList以及NamedNodeMap. 在DOM对象模型接口规范中,有 ...

  10. Uvaoj10054 - The Necklace

    /* 题意:打印欧拉回路! 思路:开始时不明白,dfs为什么是后序遍历? 因为欧拉回路本身是一条回路,那么我们在dfs时,可能存在提前找到回路,这条回路可能不是欧拉回路, 因为没有遍历完成所有的边!如 ...