之所以使用DbFirst而没有使用CodeFirst是因为考虑到现实的情况中,我们之所以会选择oracle而不是SQL SERVER,一方面是因为之前公司已经在使用Oracle,而且有好多我们需要用到的数据表已经存在了。所以,一般可以确认的是,部分表已经事先存在的这情况是有的,而CodeFirst虽然也有办法解决,但是,我们的Leader,同事似乎也会习惯手动改表而非告诉你让你写Code然后改表。所以DbFirst是一个不错的选择,其实也算是代替了代码生成品的一部分功能。

右击我们的项目,点添加·新建项·C#·数据·ADO.NET实体数据模型,取个名字,比如“OrclModel”点确定。

弹出如下的界面

选择第一个【来自数据库的EF设计器】,下一步。

按图中的箭头依次操作,注意如下:

  1. 【将web.config中的连接设置另外为】的地主一定要写一个好看的名字,因为后面使用linq的时候,都要用到它,建议使用Db开头Con结尾,中间是数据库库名的缩写或者名称。
  2. 【测试连接】一定要试,否则后面出问题就不好办了。
  3. 【是否将连接字符串加密】一般我是选不加的,毕竟是自己的服务器上面,人家都进了服务器了,而且是.NET,你在应用程序中设置此数据根本没用,人家ILSPY直接可以看到你的源码,根本没用,所以,为了方便,也不废那么多事儿了,就直接选择明文。
  4. 【连接类型】如果选TNS,那么在前一篇中web.config里面的setting部分,TNS_ADMIN是一定要加上的,否则会找不到TNS文件。

完成后,点击确定。后面就是熟悉的entityframework操作部分,与微软官网的走法一模一样,此处也不必再涉及过多,只是【选表】作映射的时候,尽量只选我们用到的表,毕竟,之前数据库已经存在了,而且里面有大量的我们用不到的表,多则无益。生成了edmx文件后,点一下保存,然后重新生成项目(原因是如果不重新生成项目 ,虽然映射文件有了,但是T4代码并没有生成cs文件,所以我们与表映射的类暂时还没有,我们可以使用重新生成来触发T4的编译工作)。

转载请注明作者及来源:张峻崎,博客园

基于Oracle的EntityFramework的WEBAPI2的实现(二)——使用DbFirst的更多相关文章

  1. [转]基于Oracle的EntityFramework的WEBAPI2的实现(一)——准备工作

    基于Oracle的EntityFramework的WEBAPI2的实现(一)——准备工作  转载请注明作者及来源:张峻崎,博客园 目前在.net的范围内,好的而且方便的ORM的真的不是很多,与VS集成 ...

  2. 基于Oracle的EntityFramework的WEBAPI2的实现(一)——准备工作

    目前在.net的范围内,好的而且方便的ORM的真的不是很多,与VS集成方便的也就当属EntityFramework(以下简称EF,不知道为什么,总EF这个缩写好不专业).但是,好多公司使用的又是ORA ...

  3. 基于Oracle的EntityFramework的WEBAPI2的实现(三)—— 建立APIController及设置返回类型JSON、XML等

    建立普通的ApiControler 右击项目中的controller文件夹·添加·控制器·包含操作的webapi2控制器(使用entity framework),写个名字,如果:Test.然后选择类, ...

  4. 基于Oracle的EntityFramework的WEBAPI2的实现(四)——自动生成在线帮助文档

    打开我们项目中的Area文件夹,正常情况下,我们会发现已经有了一个名字叫做[HelpPage]的区域(Area),这个区域是vs帮助我们自动建立的,它是一个mvc(不是webapi),它有普通的Con ...

  5. 基于Oracle的SQL优化(社区万众期待 数据库优化扛鼎巨著)

    基于Oracle的SQL优化(社区万众期待数据库优化扛鼎巨著) 崔华 编   ISBN 978-7-121-21758-6 2014年1月出版 定价:128.00元 856页 16开 编辑推荐 本土O ...

  6. 基于Oracle OCI的数据访问C语言接口ORADBI .

    基于Oracle OCI的数据访问C语言接口ORADBI cheungmine@gmail.com Mar. 22, 2008   ORADBI是我在Oracle OCI(Oracle 调用接口)基础 ...

  7. 基于ORACLE建表和循环回路来创建数据库存储过程SQL语句来实现

    一个.概要 在实际的软件开发项目.我们经常会遇到需要创造更多的相同类型的数据库表或存储过程时,.例如.假设按照尾号点表的ID号,然后,你需要创建10用户信息表,的用户信息放在同一个表中. 对于类型同样 ...

  8. 基于oracle的sql优化

    [基于oracle的sql优化] 基于oracle的sql优化 [博主]高瑞林 [博客地址]http://www.cnblogs.com/grl214 一.编写初衷描述 在应有系统开发初期,由于数据库 ...

  9. 转://从一条巨慢SQL看基于Oracle的SQL优化

    http://mp.weixin.qq.com/s/DkIPwbDKIjH2FMN13GkT4w 本次分享的内容是基于Oracle的SQL优化,以一条巨慢的SQL为例,从快速解读SQL执行计划.如何从 ...

随机推荐

  1. jquery中prop和attr的区别

    jquery中prop和attr的区别 prop: prop(name|properties|key,value|fn) **概述** 获取在匹配的元素集中的第一个元素的属性值. 随着一些内置属性的D ...

  2. centos7 iptables替换firewall

    Disable Firewalld Service. [root@rhel-centos7-tejas-barot-linux ~]# systemctl mask firewalld Stop Fi ...

  3. 关于ie下消除offset 问题解决

    这个问题应该是上周就发现了,所有页面都没有问题,偏偏就一个页面出现不兼容问题,而且他们用的是同一个文件.这真是一个神奇的事情.今天一来上班,我就着手解决这个问题,分析查看原来是这个元素多了一个offs ...

  4. L152

    For the first time, one of the new immunotherapy drugs has shown promise against breast cancer in a ...

  5. cookies分类

    Cookie总是保存在客户端中,按在客户端中的存储位置,可分为内存Cookie和硬盘Cookie. 内存Cookie由浏览器维护,保存在内存中,浏览器关闭后就消失了,其存在时间是短暂的.硬盘Cooki ...

  6. jfreechart在jsp中画图方式

    这个问题一直困扰我好久,今天算是稍微找到一点解决思路了,在网上搜了好多列子,大部分的都是用servlet来实现画图,偶然找到一个列子用的是org.jfree.chart.servlet.Servlet ...

  7. [置顶] Android 状态栏那些小坑?

    背景:因为之前老板上次问我我们的app能不能自定义上面的状态栏我说可以啊!当时没管,今天试了下果然很多坑,之前github上也有很多大佬写了一个开源库有兴趣的可以点进去看下支持DrawLayout沉侵 ...

  8. Asp.Net MVC webAPI Token based authentication

    1. 需要安装的nuget <package id="Microsoft.AspNet.Identity.Core" version="2.2.1" ta ...

  9. Vue(1) : Vue项目入门

    1.先安装nodejs环境 查看官文 2.切换到国内源 npm install -g cnpm –registry=https://registry.npm.taobao.org 执行成功后,执行如下 ...

  10. 使用TR1的智能指针

    作为C++程序员,在没有智能指针,手动管理内存的蛮荒岁月里,可以说是暗无天日,痛苦异常.直到上帝说,还是要有光,于是智能指针进了标准.C++码农的日子总算好起来了. 虽然一直鄙视着没有显式指针的语言, ...