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(); ...
随机推荐
- C#高级一
1.单例模式:又叫单件模式,属于创建型模式分类.实际上讲,一个对象只允许创建一个实例,并且提供了一个全局的访问点. (静态方法生命周期长,消亡时间短,GC不回收) ================= ...
- UIImage NSData 相互转化
//UIImage 转为 NSData NSData *imageData = UIImagePNGRepresentation(aImage); //NSData 转为 UIImage UIImag ...
- MR原理
三.MapReduce运行原理 1.Map过程简述: 1)读取数据文件内容,对每一行内容解析成<k1,v1>键值对,每个键值对调用一次map函数 2)编写映射函数处理逻辑,将输入的< ...
- windows下配置nginx+php环境
刚看到nginx这个词,我很好奇它的读法(engine x),我的直译是"引擎x",一般引"擎代"表了性能,而"x"大多出现是表示" ...
- Atitit usrQBF2312 命名空间pkg 以及 api命名 spec规范
Atitit usrQBF2312 命名空间pkg 以及 api命名 spec规范 简化英文1 常用类库sdk的命名单词统计表1 简化时间规则1 Namsspace nam spec,参照java . ...
- iOS-性能优化2
性能优化总结2 iOS应用是非常注重用户体验的,不光是要求界面设计合理美观,也要求各种UI的反应灵敏,我相信大家对那种一拖就卡卡卡的 TableView 应用没什么好印象.还记得12306么,那个速度 ...
- Unity 3D制作2D游戏的几种方法
1.使用本身UGUI. 2.把摄像机的投影改为正交投影,不考虑Z轴. 3.使用Untiy自身的2D模式. 4.使用2D TooKit插件.
- 轻松自动化---selenium-webdriver(python) (十一)
本节重点: 控制滚动条到底部 有时候我们需要控制页面滚动条上的滚动条,但滚动条并非页面上的元素,这个时候就需要借助js是来进行操作.一般用到操作滚动条的会两个场景: 注册时的法律条文需要阅读,判断用户 ...
- [Matlab] tic toc
tic Start a stopwatch timer. tic and TOC functions work together to measure elapsed time. tic, ...
- 材价看板(1)- 如何建立你的第一个kanban,看看这些暴露的问题你们有没有?
今年负责一个老产品新团队,和几年前的指标组一样,现在的团队没有采用什么研发方法,于是我开始了团队的看板之旅. 12月22日给材价整个部门的产品研发相关人员做了一次kanban工作坊培训, 以及敏 ...