位置: 编程技术 - 正文

使用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模板加载

  • 个人所得税减除费用5000是什么意思
  • 短期借款的实际资金成本
  • 个税抵扣未及时填报
  • 私立医院申报程序
  • 应交税费增值税明细账
  • 公司股权关系怎么填写
  • 开发票系统税号0和o怎么区别
  • 计提所得税是在结转损益之前还是之后
  • 本月缴纳增值税和上个月账本金额不对
  • 资产负债表总账科目有哪些
  • 政策性用房包括哪些
  • 价格调节基金费率
  • 企业筹建期间需要招几个会计
  • 一般纳税人外经证预缴怎样缴费
  • 年终奖个税公式表最新
  • 居委会有没有税收政策
  • 公司与政府协议
  • 社保不报的情况下保险报销吗
  • 预付账款收到发票的会计分录
  • 双系统跳过磁盘检测
  • win7系统没有桌面图标怎么办
  • 对外投资包括哪些投资项目
  • 实收资本属于会计准则吗
  • 前期差错更正怎么计算
  • 房地产企业开发成本结转
  • php转word
  • 未注销的坏账可以转出吗
  • 企业对员工罚款的法律依据
  • 企业所得税的特殊优惠
  • 三趾鹑是野鸡吗
  • 埃菲尔铁塔翻绳的方法
  • 六自由度机器人简图
  • vue动态路由是什么
  • 搭建小技巧
  • lvs命令详解
  • 人力为主的公司名称
  • 公司买办公用品是谁的工作
  • 购进原材料用于生产免税产品
  • mongodb认证
  • 不发工资可以先报警吗
  • 现金科目的指定科目是什么
  • 如何在税控盘上申领发票
  • 车辆购置税可以网上缴纳吗
  • 个体户定额3万需要申报吗
  • 残保金怎么计提和缴纳
  • 出纳账务处理分录
  • 什么是受托支付和非受托支付
  • 收到的进项发票在哪里认证
  • 小规模购进商品怎么做账
  • 企业用现金支付本企业职工工资时应
  • 暂估和开票的差异 erp处理
  • 公司应付款是什么意思
  • 其他应收款内部往来
  • 将本月应交未交增值税转入未交增值税
  • 出口样品未报关处罚
  • 增值税留抵怎么做凭证
  • 负数发票要交税吗
  • 公账直接转给个人,对公司有什么影响吗
  • 公司电子发票报销
  • 新办企业必须经过什么核准登记
  • win7系统无法运行红警游戏
  • win10预览版21301bug
  • xp怎么安装iis
  • win+tab键
  • win10系统样子
  • win7如何隐藏文件夹最近使用记录
  • linux就要这样学
  • js匿名函数作用域
  • js创建对象的方法有哪些
  • shell脚本如何注释
  • vuejs组件开发实例
  • js选择框全选
  • js 数组处理
  • android/data/wifipwd
  • 甘肃省政府非税收入电子发票在哪里打印
  • 税基式减免,税率式减免,税额式减免三者之间的联系
  • 湖北税务登不上去是怎么了
  • 关联企业签订劳动合同的次数可以累计吗
  • 买二套房契税可退税吗
  • 讨论如何做好寺庙管理服务工作
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设