位置: 编程技术 - 正文

使用ef6创建oracle数据库的实体模型遇到的问题及解决方案(oracle创建emp表)

编辑:rootadmin

推荐整理分享使用ef6创建oracle数据库的实体模型遇到的问题及解决方案(oracle创建emp表),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:oracle创建pfile,ef创建表,ef创建表,ef连接oracle,ef连接oracle,ef创建数据库,ef创建表,ef oracle,内容如对您有帮助,希望把文章链接给更多的朋友!

解决方案中的数据层项目最初使用的是oracle g + ef5 创建的实体模型,在分页时遇到了skip参数为0报错的问题,没有找到相关资料。

于是决定升级到ef6,在oracle官网中得知,Oracle Data Provider for .NET in ODAC c Release 3 开始支持ef6( EntityFramework 6 +Oracle.ManagedDataAccess +Oracle.ManagedDataAccess.EntityFramework,都安装最新稳定版。

安装后app.config和web.config都会被加入如下配置项

注意 entityFramework和 system.data中的版本号,nuget安装后自动生成的一般没问题,我在安装之前把网上找的资料里的配置项放在里面了,但是版本号不一致,程序启动不了,一直没注意到版本号,

找了好一会才发现是这两个地方。

3.然后就可以添加实体模型了。此时如果vs中显示找不到与ef6 兼容的实体框架提供程序,需要将配置文件中的ef节的 <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />删掉或者注释掉,保存后再重新尝试添加实体模型。

使用ef6创建oracle数据库的实体模型遇到的问题及解决方案(oracle创建emp表)

添加实体模型时需要先不选择数据库里的表,即生成空模型,然后打开edmx文件,在模型浏览器中选中实体模型,在属性中把DDL生成模板改成SSDLToOracle.tt (VS),数据库生成工作流改成Generate Oracle Via T4 (TPT).xaml (VS)。

这么做的原因是如果DDL生成模板使用默认项SSDLToOracle.tt ,oracle中的number(1,0)和number(2,0)类型的字段生成的实体属性的类型会是int,然后运行的时候报映射不匹配的错误(错误代码)。

报错原因是oracle从ODP.NET .1.0.2开始为ef6采用新的默认类型映射,官网说明 New Default Mappings 段。

SSDLToOracle.tt模板生成的属性的类型是number(1,0)对应boolean,number(2,0)对应byte,这个对应关系与新映射是一致的。

附上ef5的映射

Oracle Type Default EDM Type Custom EDM Type Number(1,0) Int bool Number(2,0) to Number(3,0) Int byte Number(4,0) Int Int Number(5,0) Int Int Number(6,0) to Number(9,0) Int Int Number(,0) Int Int Number(,0) to Number(,0) Int Int Number(,0) Int Decimal

总结

以上所述是小编给大家介绍的使用ef6创建oracle数据库的实体模型遇到的问题及解决方案,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对积木网网站的支持!

angular之ng-template模板加载 本文介绍了angular之ng-template模板加载,分享给大家,具体如下:html5中的templatetemplate标签的含义:HTMLtemplate元素是一种用于保存客户端内容的机制,该

js定时器+简单的动画效果实例 1.向下滑动!DOCTYPEhtmlhtmllang="en"headmetacharset="UTF-8"title向下滑动/titlestylebody{margin:0px;}#show{width:px;/*高度为0*/height:px;background-color:lightcoral;margin:0auto;/*设

javascript实现电脑和手机版样式切换 本文实例为大家分享了javascript实现电脑和手机版样式切换的具体代码,供大家参考,具体内容如下!DOCTYPEhtmlhtmlheadmetacharset="UTF-8"title/titlestyletype="text/css"

标签: oracle创建emp表

本文链接地址:https://www.jiuchutong.com/biancheng/369762.html 转载请保留说明!

上一篇:微信小程序倒计时功能实现代码(微信小程序倒计时乱跳)

下一篇:angular之ng-template模板加载

  • 经营所得个税计算案例
  • 息税前利润变动率的计算公式
  • 固定资产登记在三栏式吗
  • 营改增之前的工程造价怎么算
  • 经营性现金流量净额是什么意思
  • 社保基数变更上限怎么办
  • 个人独资企业生产经营所得汇算清缴时间
  • 付了定金一定会有货吗
  • 金融企业往来收入科目属于什么科
  • 不动产在建工程是什么意思
  • 货物赔偿是否需要发票
  • 维修 物业
  • 超过保质期存储时间或变质的食品应该怎样处理
  • 往年的制造费用怎么算
  • 跨年的发票能红字冲销吗?
  • 农产品加工业数据
  • 航天服务费手写发票可以抵减吗?
  • 公司前三季度实现营业收入59.17亿元
  • 会计中包装物计入
  • 个人消费索要公司的钱
  • 债转股的税收政策
  • 收到运费发票是进项还是销项
  • 银行支票怎么用
  • 出售子公司全部股权的股权账务处理
  • 生产车间消耗品管理表
  • 企业医保分几种
  • 向房东要押金的不犯法的妙招
  • 支付宝消费计入什么科目
  • 苹果手机麦克风模式关闭了,怎样才能打开?
  • php for break
  • 若依框架搭建
  • 购进原材料款项怎么入账
  • 树莓派能干什么
  • 记一次调试YOLOv5+DeepSort车辆跟踪项目的经过
  • chkdsk.exe/f命令
  • 发票错开退税款什么时候退回
  • python中的string
  • 申报水利基金的流程
  • 如何减税降税
  • wp留言板插件
  • 迭代器实现原理
  • 所得税汇算清缴调整项目
  • 财务负责人需要承担什么风险
  • 个人所得税专项附加扣除2023
  • 劳务外包会计分录最新
  • 应收票据及应收账款包括哪些科目
  • 小规模纳税人零售收入含税吗
  • 为什么股票配资的都在境外交易
  • 黄金入账如何做会计分录
  • 非贸付汇如何缴税
  • 资产处置损益如何在利润表中体现
  • 结汇是把外币换成人民币吗
  • 库存商品属于资产类科目吗
  • 存货售出时可以冲减资产减值损失吗
  • 生产性生物资产折旧计入什么科目
  • mysql备份与恢复数据库
  • win7哪年停止更新
  • 丢失的身份证补办后,原本的身份证还有用吗
  • win8.1怎么升级成win7
  • window10节电模式怎么关闭
  • ubuntu怎么设置
  • centos开机grub
  • 如何解除系统默认
  • linux扩容inode
  • windows8无线网络
  • win8 控制面板
  • win10如何使用usb无线网卡
  • scrollWidth,clientWidth与offsetWidth的区别
  • perl语言
  • javascript数组去重代码
  • js原生实现call
  • 特牛的群名
  • 批处理获取本地连接名称
  • nodejs quic
  • 详细解读退役军人优待政策
  • js 图像
  • jquery改变img的src
  • 增值税纳税申报操作流程
  • 北京增值税普通发票图片
  • 事业单位录用备案表审核快吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设