之所以使用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的编译工作)。

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

最新文章

  1. 将ubuntu的id_rsa秘钥转为putty的ppk格式
  2. iOS开发备忘录:属性列表文件数据持久化
  3. Adobe Air移动开发本人体会
  4. 给Testerhome测试小道消息做个硬广告
  5. [转] - QBuffer类参考
  6. Effective c++ 第一章 让自己习惯C++
  7. poj 3304 找一条直线穿过所有线段
  8. java.el.PropertyNotFoundException解决方法
  9. 如何借助Motion操控Linux监控摄像头
  10. RBAC(Role-Based Access Control,基于角色的权限访问控制)—权限管理设计
  11. yii2自带的backend,frontend不够用,添加一个后台模块怎么做?
  12. Global Financial Applications uses the following Public tables
  13. 配置STP、RSTP以及负载均衡
  14. 【Go】获取用户真实的ip地址
  15. angularJS中控制器和作用范围
  16. PAT A1136 A Delayed Palindrome (20 分)——回文,大整数
  17. Educational Codeforces Round 47 (Rated for Div. 2) 题解
  18. Spring Security原理与应用
  19. [UE4]在C++中使用中文变量和中文注释
  20. Postman Google浏览器离线安装Postman插件

热门文章

  1. Pandas 时间序列数据绘制X轴主要刻度和次要刻度
  2. Maven 环境搭建及相应的配置
  3. 将封装了envi功能的IDL类导出成java类,方便java调用
  4. log4cpp之Layout布局
  5. 职责链模式(Chain of Responsibility)
  6. easyui(1)
  7. 关于Instruments-Leaks工具的归纳总结
  8. postfix邮件服务器搭建04-终结篇
  9. python类中self是什么
  10. 程序设计入门-C语言基础知识-翁恺-期中测试